@qld-gov-au/qgds-bootstrap5 2.0.1 → 2.0.3

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 (137) hide show
  1. package/.storybook/preview.js +4 -1
  2. package/dist/assets/components/bs5/accordion/accordion.hbs +3 -6
  3. package/dist/assets/components/bs5/directionLinks/directionLinks.hbs +2 -1
  4. package/dist/assets/components/bs5/head/head.hbs +1 -1
  5. package/dist/assets/components/bs5/header/header.hbs +6 -9
  6. package/dist/assets/components/bs5/navbar/navbar.hbs +21 -14
  7. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithForm.hbs +1 -1
  8. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +140 -108
  9. package/dist/assets/components/bs5/pageLayout/templates/homePage.hbs +1 -1
  10. package/dist/assets/components/bs5/quickexit/quickexit.hbs +1 -1
  11. package/dist/assets/components/bs5/sidenav/sidenav.hbs +56 -37
  12. package/dist/assets/css/qld.bootstrap.css +1 -6
  13. package/dist/assets/css/qld.bootstrap.css.map +3 -3
  14. package/dist/assets/js/handlebars.init.min.js +232 -179
  15. package/dist/assets/js/handlebars.init.min.js.map +2 -2
  16. package/dist/assets/js/qld.bootstrap.min.js +5 -5
  17. package/dist/assets/js/qld.bootstrap.min.js.map +4 -4
  18. package/dist/assets/node/handlebars.init.min.js +55 -23
  19. package/dist/assets/node/handlebars.init.min.js.map +2 -2
  20. package/dist/components/bs5/accordion/accordion.hbs +3 -6
  21. package/dist/components/bs5/directionLinks/directionLinks.hbs +2 -1
  22. package/dist/components/bs5/head/head.hbs +1 -1
  23. package/dist/components/bs5/header/header.hbs +6 -9
  24. package/dist/components/bs5/navbar/navbar.hbs +21 -14
  25. package/dist/components/bs5/pageLayout/templates/contentPageWithForm.hbs +1 -1
  26. package/dist/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +140 -108
  27. package/dist/components/bs5/pageLayout/templates/homePage.hbs +1 -1
  28. package/dist/components/bs5/quickexit/quickexit.hbs +1 -1
  29. package/dist/components/bs5/sidenav/sidenav.hbs +56 -37
  30. package/dist/package.json +2 -4
  31. package/dist/sample-data/accordion/accordion.data.json +24 -23
  32. package/dist/sample-data/navbar/navbar.data.json +91 -25
  33. package/dist/sample-data/pagination/pagination.data.json +19 -19
  34. package/dist/sample-data/sidenav/sidenav.data.json +81 -80
  35. package/package.json +2 -4
  36. package/src/components/bs5/accordion/Accordion.mdx +34 -12
  37. package/src/components/bs5/accordion/__snapshots__/accordion.test.js.snap +3 -6
  38. package/src/components/bs5/accordion/accordion.data.json +24 -23
  39. package/src/components/bs5/accordion/accordion.hbs +3 -6
  40. package/src/components/bs5/accordion/accordion.scss +19 -9
  41. package/src/components/bs5/accordion/accordion.stories.js +8 -0
  42. package/src/components/bs5/accordion/accordion.test.js +5 -0
  43. package/src/components/bs5/accordion/mdx/_designResources.mdx +6 -0
  44. package/src/components/bs5/accordion/mdx/_usageInstructions.mdx +10 -0
  45. package/src/components/bs5/backToTop/backToTop.mdx +4 -5
  46. package/src/components/bs5/banner/Banner.mdx +1 -3
  47. package/src/components/bs5/blockquote/Blockquote.mdx +4 -5
  48. package/src/components/bs5/blockquote/blockquote.scss +47 -7
  49. package/src/components/bs5/breadcrumbs/Breadcrumbs.mdx +1 -3
  50. package/src/components/bs5/button/Button.mdx +4 -5
  51. package/src/components/bs5/button/button.scss +13 -1
  52. package/src/components/bs5/callToAction/callToAction.mdx +1 -3
  53. package/src/components/bs5/callout/Callout.mdx +4 -5
  54. package/src/components/bs5/card/Card.mdx +1 -3
  55. package/src/components/bs5/card/card.scss +1 -25
  56. package/src/components/bs5/directionLinks/DirectionLinks.mdx +4 -5
  57. package/src/components/bs5/directionLinks/directionLinks.hbs +2 -1
  58. package/src/components/bs5/directionLinks/directionLinks.scss +27 -80
  59. package/src/components/bs5/directionLinks/directionLinks.stories.js +7 -14
  60. package/src/components/bs5/footer/Footer.mdx +1 -3
  61. package/src/components/bs5/footer/footer.scss +4 -11
  62. package/src/components/bs5/formcheck/stories/checkbox/Checkbox.mdx +7 -6
  63. package/src/components/bs5/formcheck/stories/radio/Radio.mdx +7 -6
  64. package/src/components/bs5/globalAlert/GlobalAlert.mdx +1 -3
  65. package/src/components/bs5/globalAlert/globalAlert.scss +6 -0
  66. package/src/components/bs5/header/Header.mdx +1 -3
  67. package/src/components/bs5/header/header.hbs +6 -9
  68. package/src/components/bs5/header/header.scss +6 -2
  69. package/src/components/bs5/icons/Icons.mdx +167 -7
  70. package/src/components/bs5/icons/_icons.sizes.scss +9 -0
  71. package/src/components/bs5/icons/icons.scss +23 -71
  72. package/src/components/bs5/icons/icons.stories.js +34 -57
  73. package/src/components/bs5/icons/mdx/_IconsSizes.mdx +112 -0
  74. package/src/components/bs5/icons/stories/storyFlexContainer.html +18 -0
  75. package/src/components/bs5/icons/stories/storyInlineWithText.html +18 -0
  76. package/src/components/bs5/icons/stories/storySizes.html +89 -0
  77. package/src/components/bs5/image/Image.mdx +1 -4
  78. package/src/components/bs5/inpageAlert/InpageAlert.mdx +1 -3
  79. package/src/components/bs5/inpagenav/Inpagenav.mdx +4 -5
  80. package/src/components/bs5/inpagenav/inpagenav.scss +7 -3
  81. package/src/components/bs5/link/link.mdx +1 -3
  82. package/src/components/bs5/link/link.scss +2 -15
  83. package/src/components/bs5/linkColumns/linkColumns.mdx +1 -3
  84. package/src/components/bs5/logo/Logo.mdx +1 -3
  85. package/src/components/bs5/navbar/navbar.data.json +91 -25
  86. package/src/components/bs5/navbar/navbar.functions.js +4 -0
  87. package/src/components/bs5/navbar/navbar.hbs +21 -14
  88. package/src/components/bs5/navbar/navbar.scss +219 -166
  89. package/src/components/bs5/navbar/navbar.stories.js +31 -2
  90. package/src/components/bs5/pageLayout/ThemeShowcase.stories.js +249 -0
  91. package/src/components/bs5/pageLayout/pageLayout.stories.js +3 -1
  92. package/src/components/bs5/pageLayout/templates/contentPageWithForm.hbs +1 -1
  93. package/src/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +140 -108
  94. package/src/components/bs5/pageLayout/templates/homePage.hbs +1 -1
  95. package/src/components/bs5/pagination/Pagination.mdx +4 -5
  96. package/src/components/bs5/pagination/pagination.data.json +19 -19
  97. package/src/components/bs5/pagination/pagination.scss +37 -63
  98. package/src/components/bs5/promotionalPanel/PromotionalPanel.mdx +1 -3
  99. package/src/components/bs5/promotionalPanel/promotionalPanel.scss +23 -22
  100. package/src/components/bs5/quickexit/quickexit.functions.js +24 -37
  101. package/src/components/bs5/quickexit/quickexit.hbs +1 -1
  102. package/src/components/bs5/quickexit/quickexit.scss +27 -10
  103. package/src/components/bs5/searchInput/SearchInput.mdx +5 -5
  104. package/src/components/bs5/sidenav/Sidenav.mdx +4 -5
  105. package/src/components/bs5/sidenav/sidenav.data.json +81 -80
  106. package/src/components/bs5/sidenav/sidenav.hbs +56 -37
  107. package/src/components/bs5/sidenav/sidenav.scss +236 -151
  108. package/src/components/bs5/skiplinks/SkipLinks.mdx +1 -3
  109. package/src/components/bs5/skiplinks/skipLinks.functions.js +0 -9
  110. package/src/components/bs5/skiplinks/skipLinks.test.js +0 -1
  111. package/src/components/bs5/table/Table.mdx +4 -5
  112. package/src/components/bs5/tabs/Tabs.mdx +4 -5
  113. package/src/components/bs5/tabs/tabs.scss +22 -1
  114. package/src/components/bs5/tag/Tag.mdx +4 -5
  115. package/src/components/bs5/typography/Typography.mdx +4 -5
  116. package/src/components/bs5/video/Video.mdx +4 -5
  117. package/src/components/common/layout/container.scss +5 -0
  118. package/src/components/common/layout/content.scss +16 -8
  119. package/src/css/functions/_index.scss +1 -0
  120. package/src/css/functions/in-list.scss +5 -0
  121. package/src/css/main.scss +4 -10
  122. package/src/css/mixins/_index.scss +3 -0
  123. package/src/css/mixins/make-icon.scss +87 -0
  124. package/src/css/qld-theme.scss +74 -31
  125. package/src/css/qld-type.scss +26 -140
  126. package/src/css/qld-utilities.scss +29 -14
  127. package/src/css/qld-variables.scss +4 -4
  128. package/src/css/utilities/_index.scss +1 -0
  129. package/src/css/utilities/sr-only.scss +5 -0
  130. package/src/css/variables/_index.scss +1 -0
  131. package/src/css/variables/type.scss +58 -0
  132. package/src/js/qld.bootstrap.js +1 -9
  133. package/src/stories/documentation/_storybookDocsTabs.jsx +63 -0
  134. package/src/stories/documentation/storybook-documentation.scss +51 -0
  135. package/src/components/bs5/icons/story-icon-sizing.html +0 -131
  136. package/src/components/bs5/icons/story-icon-usage.html +0 -89
  137. package/src/components/bs5/pagination/health-icon-sprite.svg +0 -156
@@ -1,24 +1,25 @@
1
1
  {
2
- "groupid": "accordion-group-1",
3
- "toggleAll": true,
4
- "accordionItems": [
5
- {
6
- "id": "One",
7
- "title": "Accordion item #1",
8
- "expanded": true,
9
- "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce dictum efficitur egestas.</p><p>Aenean sed pretium mauris. Quisque euismod in nisl et consequat.</p> "
10
- },
11
- {
12
- "id": "Two",
13
- "title": "Accordion item #2",
14
- "expanded": false,
15
- "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit.</p><ul><li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li><li>Aliquam tincidunt mauris eu risus.</li><li>Vestibulum auctor dapibus neque.</li></ul>"
16
- },
17
- {
18
- "id": "Three",
19
- "title": "Accordion item #3",
20
- "expanded": false,
21
- "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit.</p><ol><li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li><li>Aliquam tincidunt mauris eu risus.</li><li>Vestibulum auctor dapibus neque.</li></ol>"
22
- }
23
- ]
24
- }
2
+ "groupid": "accordion-group-1",
3
+ "toggleAll": true,
4
+ "headingTag": "h2",
5
+ "accordionItems": [
6
+ {
7
+ "id": "One",
8
+ "title": "Accordion item #1",
9
+ "expanded": true,
10
+ "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce dictum efficitur egestas.</p><p>Aenean sed pretium mauris. Quisque euismod in nisl et consequat.</p> "
11
+ },
12
+ {
13
+ "id": "Two",
14
+ "title": "Accordion item #2",
15
+ "expanded": false,
16
+ "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit.</p><ul><li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li><li>Aliquam tincidunt mauris eu risus.</li><li>Vestibulum auctor dapibus neque.</li></ul>"
17
+ },
18
+ {
19
+ "id": "Three",
20
+ "title": "Accordion item #3",
21
+ "expanded": false,
22
+ "content": "<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla vitae elit libero, a pharetra augue. Nullam id dolor id nibh ultricies vehicula ut id elit.</p><ol><li>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</li><li>Aliquam tincidunt mauris eu risus.</li><li>Vestibulum auctor dapibus neque.</li></ol>"
23
+ }
24
+ ]
25
+ }
@@ -1,6 +1,5 @@
1
1
  <!-- QGDS Component: Accordion -->
2
2
  <div class="accordion-group">
3
-
4
3
  {{#if toggleAll}}
5
4
  <div class="accordion-toggle">
6
5
  <button class="accordion-toggle-btn accordion-toggle-btn--closed" type="button">Open all</button>
@@ -9,20 +8,18 @@
9
8
  <div class="accordion" id="{{groupid}}">
10
9
  {{#each accordionItems }}
11
10
  <div class="accordion-item">
12
- <h2 class="accordion-header" id="heading-{{id}}">
11
+ <{{isdefined ../headingTag 'h2'}} class="accordion-header" id="heading-{{id}}">
13
12
  <button class="accordion-button {{#unless expanded}}collapsed{{/unless}}" type="button" data-bs-toggle="collapse" data-bs-target="#collapse-{{id}}" aria-expanded="{{expanded}}" aria-controls="collapse-{{id}}">
14
13
  {{title}}
15
14
  </button>
16
- </h2>
15
+ </{{isdefined ../headingTag 'h2'}}>
17
16
 
18
- <div id="collapse-{{id}}" class="accordion-collapse collapse {{#if expanded}}show{{/if}}" aria-labelledby="heading-{{id}}">
17
+ <div id="collapse-{{id}}" class="accordion-collapse collapse {{#if expanded}}show{{/if}}" aria-labelledby="heading-{{id}}" role="region">
19
18
  <div class="accordion-body">
20
19
  {{{content}}}
21
20
  </div>
22
21
  </div>
23
22
  </div>
24
23
  {{/each }}
25
-
26
24
  </div>
27
-
28
25
  </div>
@@ -19,13 +19,15 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
19
19
  .dark &,
20
20
  .dark-alt & {
21
21
  --#{$prefix}focus: var(--#{$prefix}dark-focus);
22
- }
22
+ }
23
23
  }
24
24
 
25
25
  .accordion {
26
26
  --#{$prefix}accordion-color: var(--#{$prefix}body-color);
27
27
  --#{$prefix}accordion-bg: var(--#{$prefix}body-bg);
28
- --#{$prefix}accordion-border-color: var(--#{$prefix}color-default-color-light-border-default);
28
+ --#{$prefix}accordion-border-color: var(
29
+ --#{$prefix}color-default-color-light-border-default
30
+ );
29
31
  --#{$prefix}accordion-border-width: 1px;
30
32
  --#{$prefix}accordion-border-radius: 0;
31
33
  --#{$prefix}accordion-inner-border-radius: 0;
@@ -34,7 +36,9 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
34
36
  --#{$prefix}accordion-btn-color: var(--#{$prefix}link-color);
35
37
  --#{$prefix}accordion-btn-bg: var(--#{$prefix}extra-light-grey);
36
38
  --#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon)};
37
- --#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon)};
39
+ --#{$prefix}accordion-btn-active-icon: #{escape-svg(
40
+ $accordion-button-active-icon
41
+ )};
38
42
  --#{$prefix}accordion-btn-icon-width: 1.5rem;
39
43
  --#{$prefix}accordion-btn-icon-transform: rotate(180deg);
40
44
  --#{$prefix}accordion-btn-icon-transition: transform 0.25s ease-in;
@@ -46,7 +50,9 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
46
50
  .light & {
47
51
  --#{$prefix}accordion-bg: var(--#{$prefix}light-background);
48
52
  --#{$prefix}accordion-btn-bg: var(--#{$prefix}light-background-shade);
49
- --#{$prefix}accordion-border-color: var(--#{$prefix}color-default-color-light-border-light);
53
+ --#{$prefix}accordion-border-color: var(
54
+ --#{$prefix}color-default-color-light-border-light
55
+ );
50
56
  }
51
57
 
52
58
  .alt & {
@@ -59,7 +65,9 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
59
65
  .dark &,
60
66
  .dark-alt & {
61
67
  --#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon-dark)};
62
- --#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon-dark)};
68
+ --#{$prefix}accordion-btn-active-icon: #{escape-svg(
69
+ $accordion-button-active-icon-dark
70
+ )};
63
71
  --#{$prefix}accordion-color: var(--#{$prefix}white);
64
72
  --#{$prefix}accordion-btn-color: var(--#{$prefix}white);
65
73
  --#{$prefix}accordion-active-color: var(--#{$prefix}white);
@@ -96,7 +104,9 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
96
104
 
97
105
  &:hover {
98
106
  background: var(--#{$prefix}accordion-bg);
99
- text-decoration-thickness: var(--#{$prefix}link-underline-thickness-hover);
107
+ text-decoration-thickness: var(
108
+ --#{$prefix}link-underline-thickness-hover
109
+ );
100
110
  }
101
111
 
102
112
  &:focus,
@@ -108,13 +118,14 @@ $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://w
108
118
 
109
119
  &-header {
110
120
  font-weight: var(--#{$prefix}body-font-weight);
121
+ margin-block-start: 0;
111
122
  }
112
123
  }
113
124
 
114
125
  div .accordion-body {
115
126
  padding: 1rem;
116
127
 
117
- :last-child {
128
+ :last-child {
118
129
  margin-bottom: 0;
119
130
  }
120
131
  }
@@ -124,7 +135,7 @@ div .accordion-body {
124
135
  display: flex;
125
136
  justify-content: flex-end;
126
137
  padding: 0;
127
- padding-block-end: .5rem;
138
+ padding-block-end: 0.5rem;
128
139
  font-size: 0.875rem;
129
140
  line-height: 1rem;
130
141
 
@@ -144,7 +155,6 @@ div .accordion-body {
144
155
 
145
156
  &:hover {
146
157
  text-decoration: none;
147
-
148
158
  }
149
159
 
150
160
  &:after {
@@ -12,6 +12,14 @@ export default {
12
12
  title: "3. Components/Accordion",
13
13
  render: (args) => new Accordion(args).html,
14
14
  args: defaultdata,
15
+ argTypes: {
16
+ headingTag: {
17
+ name: "Heading Tag",
18
+ description: "Heading tag. Can be h2, h3, h4, h5 or h6.",
19
+ control: "select",
20
+ options: ["h2", "h3", "h4", "h5", "h6"],
21
+ },
22
+ },
15
23
 
16
24
  /**
17
25
  * Additional parameters for the story.
@@ -1,5 +1,7 @@
1
1
  import { expect, it, describe, test } from "vitest";
2
2
  import { JSDOM } from "jsdom";
3
+ import Handlebars from "handlebars";
4
+ import handlebarsHelpers from "../../../js/handlebars.helpers.js";
3
5
  import { Accordion } from "./Accordion.js";
4
6
  import mockData from "./accordion.data.json";
5
7
  import fs from "fs";
@@ -30,6 +32,9 @@ const qldBootstrapJsFile = fs.readFileSync(
30
32
  "utf-8",
31
33
  );
32
34
 
35
+ // Register Handlebars helpers before running tests
36
+ handlebarsHelpers(Handlebars);
37
+
33
38
  describe("Accordion", () => {
34
39
  const AccordionComponent = new Accordion(mockData);
35
40
  const dom = new JSDOM(
@@ -0,0 +1,6 @@
1
+ ## Design resources
2
+
3
+ - [Component library (Figma)](https://www.figma.com/file/qKsxl3ogIlBp7dafgxXuCA/QLD-GOV-DDS?type=design&node-id=6276-45691&mode=design&t=chjWFr1CLu6KQXzg-4)
4
+ - [Master component file (Figma)](https://www.figma.com/file/qKsxl3ogIlBp7dafgxXuCA/QLD-GOV-DDS?type=design&node-id=5990-98109&mode=design&t=ORVHLonASEFQzPeD-0)
5
+ - [Design System website](https://www.design-system.health.qld.gov.au/components/accordions)
6
+ - [Bootstrap component](https://getbootstrap.com/docs/5.3/components/accordion/)
@@ -0,0 +1,10 @@
1
+ <h3>Usage Instructions</h3>
2
+ <div>
3
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras consequat
4
+ gravida nulla et elementum. Vivamus ac nisl ac nunc mollis tincidunt. Maecenas
5
+ sagittis sit amet tellus accumsan sagittis. Duis a magna eu sem dapibus auctor
6
+ sit amet in eros. Ut consectetur augue vitae metus efficitur aliquam. Donec at
7
+ velit venenatis, vulputate ipsum id, dignissim nibh. Pellentesque nisi mauris,
8
+ sodales vitae blandit vel, semper eu mi. In vitae lectus nec urna condimentum
9
+ convallis.
10
+ </div>
@@ -1,12 +1,11 @@
1
- import { Canvas, Meta, Story } from "@storybook/blocks"
2
- import * as BackToTopStories from "./backToTop.stories"
1
+ import { Canvas, Meta, Story } from "@storybook/blocks";
2
+ import * as BackToTopStories from "./backToTop.stories";
3
3
 
4
4
  <Meta of={BackToTopStories} />
5
5
 
6
6
  # Back to Top
7
- <Canvas>
8
- <Story of={BackToTopStories.Default} />
9
- </Canvas>
7
+
8
+ <Canvas of={BackToTopStories.Default} />
10
9
 
11
10
  ## Design resources
12
11
 
@@ -6,9 +6,7 @@ import defaultdata from "./banner.data.json";
6
6
 
7
7
  # Banner
8
8
 
9
- <Canvas>
10
- <Story of={BannerStories.Default} />
11
- </Canvas>
9
+ <Canvas of={BannerStories.Default} />
12
10
 
13
11
  ## Design resources
14
12
 
@@ -1,12 +1,11 @@
1
- import { Canvas, Meta, Story } from "@storybook/blocks"
2
- import * as BlockquoteStories from "./blockquote.stories"
1
+ import { Canvas, Meta, Story } from "@storybook/blocks";
2
+ import * as BlockquoteStories from "./blockquote.stories";
3
3
 
4
4
  <Meta of={BlockquoteStories} />
5
5
 
6
6
  # Blockquote
7
- <Canvas>
8
- <Story of={BlockquoteStories.Default} />
9
- </Canvas>
7
+
8
+ <Canvas of={BlockquoteStories.Default} />
10
9
 
11
10
  ## Design resources
12
11
 
@@ -1,9 +1,15 @@
1
1
  //PREP REUSABLE VARIABLES, SCOPED TO .blockquote
2
2
  .blockquote {
3
3
  // Colours
4
- --#{$prefix}quote-border-color: var(--#{$prefix}color-default-color-light-accent-design-accent);
5
- --#{$prefix}quote-text-color: var(--#{$prefix}color-default-color-light-text-heading);
6
- --#{$prefix}quote-ref-text-color: var(--#{$prefix}color-default-color-light-text-default);
4
+ --#{$prefix}quote-border-color: var(
5
+ --#{$prefix}color-default-color-light-accent-design-accent
6
+ );
7
+ --#{$prefix}quote-text-color: var(
8
+ --#{$prefix}color-default-color-light-text-heading
9
+ );
10
+ --#{$prefix}quote-ref-text-color: var(
11
+ --#{$prefix}color-default-color-light-text-default
12
+ );
7
13
  //Measurements
8
14
  --#{$prefix}quote-spacing: 1rem;
9
15
  --#{$prefix}quote-border-width: 0.25rem;
@@ -11,13 +17,38 @@
11
17
  // Fonts
12
18
  --#{$prefix}quote-font-size: 1rem;
13
19
  --#{$prefix}quote-heavy-font-weight: 600;
20
+ --#{$prefix}blockquote-bg: var(--#{$prefix}body-bg);
21
+
22
+ .light & {
23
+ --#{$prefix}blockquote-bg: var(--#{$prefix}light-background);
24
+ }
25
+
26
+ .alt & {
27
+ --#{$prefix}blockquote-bg: var(--#{$prefix}light-grey-alt);
28
+ }
29
+
30
+ .dark & {
31
+ --#{$prefix}blockquote-bg: var(--#{$prefix}brand-primary);
32
+ }
33
+
34
+ .dark-alt & {
35
+ --#{$prefix}blockquote-bg: var(--#{$prefix}dark-blue);
36
+ }
37
+
38
+ .dark &,
39
+ .dark-alt & {
40
+ --#{$prefix}quote-text-color: var(--#{$prefix}white);
41
+ --#{$prefix}quote-ref-text-color: var(--#{$prefix}white);
42
+ }
14
43
  }
15
44
 
16
45
  //Ruleset for COMPONENT, reference our scoped variables, or use variables of ::root node
17
46
  .blockquote {
18
- border-inline-start: var(--#{$prefix}quote-border-width) solid var(--#{$prefix}quote-border-color);
47
+ background: var(--#{$prefix}blockquote-bg);
48
+ border-inline-start: var(--#{$prefix}quote-border-width) solid
49
+ var(--#{$prefix}quote-border-color);
19
50
  padding-block: calc(var(--#{$prefix}quote-spacing) * 0.5);
20
- padding-inline-start: calc(var(--#{$prefix}quote-spacing) * 1.5);
51
+ padding-inline-start: calc(var(--#{$prefix}quote-spacing) * 1.25);
21
52
  padding-inline-end: calc(var(--#{$prefix}quote-spacing) * 1);
22
53
 
23
54
  blockquote {
@@ -25,7 +56,7 @@
25
56
  margin-block-end: 0;
26
57
  color: var(--#{$prefix}quote-text-color);
27
58
  font-size: calc(var(--#{$prefix}quote-font-size) * 1.25);
28
- line-height: calc(var(--#{$prefix}quote-font-size) * 1.4);
59
+ line-height: calc(var(--#{$prefix}quote-font-size) * 1.75);
29
60
  font-weight: var(--#{$prefix}quote-heavy-font-weight);
30
61
  p:last-child {
31
62
  margin-block-end: 0;
@@ -34,6 +65,15 @@
34
65
  .quote-source {
35
66
  color: var(--#{$prefix}quote-ref-text-color);
36
67
  font-size: calc(var(--#{$prefix}quote-font-size) * 0.875);
37
- margin-block-start: calc(var(--#{$prefix}quote-spacing) * 0.625);
68
+ margin-block-start: calc(var(--#{$prefix}quote-spacing) * 0.75);
69
+ }
70
+
71
+ > figcaption {
72
+ background: transparent;
73
+ color: var(--figure-color);
74
+
75
+ display: block;
76
+ caption-side: bottom;
77
+ padding: 0;
38
78
  }
39
79
  }
@@ -6,9 +6,7 @@ import defaultdata from "./breadcrumbs.data.json";
6
6
 
7
7
  # Breadcrumbs
8
8
 
9
- <Canvas>
10
- <Story of={BreadcrumbsStories.Default} />
11
- </Canvas>
9
+ <Canvas of={BreadcrumbsStories.Default} />
12
10
 
13
11
  ## Design resources
14
12
 
@@ -1,12 +1,11 @@
1
- import { Canvas, Meta, Story } from "@storybook/blocks"
2
- import * as ButtonStories from "./button.stories"
1
+ import { Canvas, Meta, Story } from "@storybook/blocks";
2
+ import * as ButtonStories from "./button.stories";
3
3
 
4
4
  <Meta of={ButtonStories} />
5
5
 
6
6
  # Button
7
- <Canvas>
8
- <Story of={ButtonStories.Default} />
9
- </Canvas>
7
+
8
+ <Canvas of={ButtonStories.Default} />
10
9
 
11
10
  ## Design resources
12
11
 
@@ -12,6 +12,8 @@
12
12
  --#{$prefix}btn-focus-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
13
13
  --#{$prefix}btn-disabled-opacity: 0.5;
14
14
  --#{$prefix}btn-spinner-icon-size__md: 1.5rem;
15
+ --#{$prefix}icon-color: var(--qld-action-icon-color);
16
+ --#{$prefix}icon-hover-color: var(--qld-action-icon-hover-color);
15
17
 
16
18
  //Primary button variant
17
19
  &-primary {
@@ -31,8 +33,9 @@
31
33
  --#{$prefix}btn-focus-border-color: var(
32
34
  --#{$prefix}color-default-color-light-action-primary-hover
33
35
  );
36
+ --#{$prefix}icon-color: currentColor;
37
+ --#{$prefix}icon-hover-color: currentColor;
34
38
  }
35
-
36
39
  //Secondary button variant
37
40
  &-secondary,
38
41
  &-outline-secondary {
@@ -162,11 +165,19 @@ a.btn,
162
165
  min-height: 3.25rem;
163
166
  text-align: center;
164
167
 
168
+ .qld-icon {
169
+ flex-shrink: 0;
170
+ }
171
+
165
172
  span[class^="icon-"],
166
173
  span[class^="fa-"] {
167
174
  margin: 0 0.5rem;
168
175
  }
169
176
 
177
+ &:hover {
178
+ --#{$prefix}icon-color: var(--#{$prefix}icon-hover-color);
179
+ }
180
+
170
181
  &:hover,
171
182
  &:visited,
172
183
  &:focus {
@@ -196,6 +207,7 @@ a.btn,
196
207
  &:disabled,
197
208
  &.disabled {
198
209
  --qld-body-color: var(--#{$prefix}btn-disabled-color);
210
+ --#{$prefix}icon-color: currentColor;
199
211
 
200
212
  &:visited {
201
213
  color: var(--#{$prefix}btn-disabled-color);
@@ -6,9 +6,7 @@ import defaultdata from "./callToAction.data.json";
6
6
 
7
7
  # CallToAction
8
8
 
9
- <Canvas>
10
- <Story of={CallToActionStories.Default} />
11
- </Canvas>
9
+ <Canvas of={CallToActionStories.Default} />
12
10
 
13
11
  ## Design resources
14
12
 
@@ -1,12 +1,11 @@
1
- import { Canvas, Meta, Story } from "@storybook/blocks"
2
- import * as CalloutStories from "./callout.stories"
1
+ import { Canvas, Meta, Story } from "@storybook/blocks";
2
+ import * as CalloutStories from "./callout.stories";
3
3
 
4
4
  <Meta of={CalloutStories} />
5
5
 
6
6
  # Callout
7
- <Canvas>
8
- <Story of={CalloutStories.Default} />
9
- </Canvas>
7
+
8
+ <Canvas of={CalloutStories.Default} />
10
9
 
11
10
  ## Design resources
12
11
 
@@ -6,9 +6,7 @@ import defaultdata from "./card.data.json";
6
6
 
7
7
  # Cards
8
8
 
9
- <Canvas>
10
- <Story of={CardStories.Default} />
11
- </Canvas>
9
+ <Canvas of={CardStories.Default} />
12
10
 
13
11
  ## Design resources
14
12
 
@@ -65,37 +65,13 @@
65
65
  --#{$prefix}card-icon-line-height: 8rem;
66
66
  }
67
67
  &.card-no-action {
68
- .qld-icon {
69
- background-color: var(--#{$prefix}card-title-color);
70
- }
68
+ --#{$prefix}icon-color: var(--#{$prefix}card-title-color);
71
69
  }
72
70
  &.default {
73
71
  .card-icon-background {
74
72
  background-color: var(--#{$prefix}neutral-lightest);
75
73
  }
76
74
  }
77
- &.card-single-action {
78
- .qld-icon {
79
- background-color: var(--#{$prefix}light-action-secondary);
80
- }
81
- &.card-dark,
82
- &.card-dark-alt {
83
- .qld-icon {
84
- background-color: var(--#{$prefix}dark-action-secondary);
85
- }
86
- }
87
- }
88
- &.card-multi-action {
89
- .qld-icon {
90
- background-color: var(--#{$prefix}light-action-secondary);
91
- }
92
- &.card-dark,
93
- &.card-dark-alt {
94
- .qld-icon {
95
- background-color: var(--#{$prefix}dark-action-secondary);
96
- }
97
- }
98
- }
99
75
  &.card-arrow {
100
76
  .card-body {
101
77
  display: flex;
@@ -1,12 +1,11 @@
1
- import { Canvas, Meta, Story } from "@storybook/blocks"
2
- import * as DirectionLinksStories from "./directionLinks.stories"
1
+ import { Canvas, Meta, Story } from "@storybook/blocks";
2
+ import * as DirectionLinksStories from "./directionLinks.stories";
3
3
 
4
4
  <Meta of={DirectionLinksStories} />
5
5
 
6
6
  # DirectionLinks
7
- <Canvas>
8
- <Story of={DirectionLinksStories.Default} />
9
- </Canvas>
7
+
8
+ <Canvas of={DirectionLinksStories.Default} />
10
9
 
11
10
  ## Design resources
12
11
 
@@ -5,5 +5,6 @@
5
5
  {{~#if target}} target="{{target}}"{{/if~}}
6
6
  {{~#if arialabel}} aria-label="{{arialabel}}" {{/if~}}>
7
7
  {{{label}}}
8
- <span class="icon" aria-hidden="true"></span>
8
+ {{!-- <span class="icon" aria-hidden="true"></span> --}}
9
+ <span class="qld-icon qld-icon-md qld-icon-arrow-{{class}}" aria-hidden="true"></span>
9
10
  </a>