@qld-gov-au/qgds-bootstrap5 1.1.40 → 2.0.0

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 (184) hide show
  1. package/.eslintrc.cjs +27 -27
  2. package/.vscode/settings.json +5 -5
  3. package/dist/assets/components/bs5/button/button.hbs +48 -30
  4. package/dist/assets/components/bs5/card/card.hbs +3 -17
  5. package/dist/assets/components/bs5/containerLayout/containerLayout.hbs +100 -0
  6. package/dist/assets/components/bs5/footer/customLinks.hbs +7 -0
  7. package/dist/assets/components/bs5/footer/feedbackForm.hbs +25 -0
  8. package/dist/assets/components/bs5/footer/followLinks.hbs +14 -0
  9. package/dist/assets/components/bs5/footer/footer.hbs +229 -346
  10. package/dist/assets/components/bs5/formcheck/formcheck.hbs +1 -1
  11. package/dist/assets/components/bs5/head/head.hbs +4 -4
  12. package/dist/assets/components/bs5/header/header.hbs +124 -878
  13. package/dist/assets/components/bs5/header/headerBrand.hbs +35 -0
  14. package/dist/assets/components/bs5/link/link.hbs +41 -0
  15. package/dist/assets/components/bs5/logo/logoCOALandscape.hbs +110 -55
  16. package/dist/assets/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
  17. package/dist/assets/components/bs5/navbar/navbar.hbs +65 -245
  18. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
  19. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
  20. package/dist/assets/components/bs5/pageLayout/templates/homePage.hbs +111 -0
  21. package/dist/assets/components/bs5/searchInput/searchInput.hbs +9 -11
  22. package/dist/assets/css/qld.bootstrap.css +1 -1
  23. package/dist/assets/css/qld.bootstrap.css.map +3 -3
  24. package/dist/assets/js/bootstrap.bundle.js +3 -6
  25. package/dist/assets/js/bootstrap.bundle.js.map +1 -1
  26. package/dist/assets/js/bootstrap.bundle.min.js +2 -2
  27. package/dist/assets/js/bootstrap.bundle.min.js.map +1 -1
  28. package/dist/assets/js/bootstrap.js +3 -6
  29. package/dist/assets/js/bootstrap.min.js +2 -2
  30. package/dist/assets/js/bootstrap.min.js.map +1 -1
  31. package/dist/assets/js/handlebars.helpers.bundle.js.map +2 -2
  32. package/dist/assets/js/handlebars.helpers.js +34 -34
  33. package/dist/assets/js/handlebars.init.min.js +1055 -2041
  34. package/dist/assets/js/handlebars.init.min.js.map +4 -4
  35. package/dist/assets/js/handlebars.partials.js +14 -6
  36. package/dist/assets/js/qld.bootstrap.min.js +9 -9
  37. package/dist/assets/js/qld.bootstrap.min.js.map +4 -4
  38. package/dist/assets/node/handlebars.init.min.js +538 -108
  39. package/dist/assets/node/handlebars.init.min.js.map +3 -3
  40. package/dist/components/bs5/button/button.hbs +48 -30
  41. package/dist/components/bs5/card/card.hbs +3 -17
  42. package/dist/components/bs5/containerLayout/containerLayout.hbs +100 -0
  43. package/dist/components/bs5/footer/customLinks.hbs +7 -0
  44. package/dist/components/bs5/footer/feedbackForm.hbs +25 -0
  45. package/dist/components/bs5/footer/followLinks.hbs +14 -0
  46. package/dist/components/bs5/footer/footer.hbs +229 -346
  47. package/dist/components/bs5/formcheck/formcheck.hbs +1 -1
  48. package/dist/components/bs5/head/head.hbs +4 -4
  49. package/dist/components/bs5/header/header.hbs +124 -878
  50. package/dist/components/bs5/header/headerBrand.hbs +35 -0
  51. package/dist/components/bs5/link/link.hbs +41 -0
  52. package/dist/components/bs5/logo/logoCOALandscape.hbs +110 -55
  53. package/dist/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
  54. package/dist/components/bs5/navbar/navbar.hbs +65 -245
  55. package/dist/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
  56. package/dist/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
  57. package/dist/components/bs5/pageLayout/templates/homePage.hbs +111 -0
  58. package/dist/components/bs5/searchInput/searchInput.hbs +9 -11
  59. package/dist/components/handlebars.helpers.js +34 -34
  60. package/dist/components/handlebars.partials.js +14 -6
  61. package/dist/package.json +2 -2
  62. package/dist/sample-data/button/button.data.json +10 -8
  63. package/dist/sample-data/footer/footer.data.json +128 -84
  64. package/dist/sample-data/formcheck/stories/checkbox/checkbox.data.json +51 -46
  65. package/dist/sample-data/formcheck/stories/radio/radio.data.json +51 -46
  66. package/dist/sample-data/header/header.variant.coBrand.data.json +28 -40
  67. package/dist/sample-data/header/header.variant.endorsed.data.json +116 -150
  68. package/dist/sample-data/header/header.variant.masterBrand.data.json +116 -152
  69. package/dist/sample-data/header/header.variant.standAlone.data.json +118 -150
  70. package/dist/sample-data/header/header.variant.subBrand.data.json +32 -159
  71. package/dist/sample-data/inpageAlert/inpageAlert.data.json +6 -6
  72. package/dist/sample-data/link/link.data.json +77 -0
  73. package/dist/sample-data/logo/logo.data.json +1 -0
  74. package/dist/sample-data/navbar/navbar.data.json +191 -0
  75. package/dist/sample-data/searchInput/searchInput.data.json +2 -3
  76. package/dist/sample-data/tabs/tabs.data.json +45 -44
  77. package/package.json +2 -2
  78. package/src/components/bs5/accordion/Accordion.mdx +8 -2
  79. package/src/components/bs5/banner/Banner.mdx +6 -1
  80. package/src/components/bs5/banner/banner.scss +16 -9
  81. package/src/components/bs5/banner/banner.stories.js +17 -17
  82. package/src/components/bs5/breadcrumbs/Breadcrumbs.mdx +8 -2
  83. package/src/components/bs5/breadcrumbs/breadcrumbs.functions.js +2 -0
  84. package/src/components/bs5/breadcrumbs/breadcrumbs.scss +1 -1
  85. package/src/components/bs5/button/button.data.json +10 -8
  86. package/src/components/bs5/button/button.hbs +48 -30
  87. package/src/components/bs5/button/button.scss +61 -0
  88. package/src/components/bs5/button/button.stories.js +29 -10
  89. package/src/components/bs5/callToAction/callToAction.mdx +8 -3
  90. package/src/components/bs5/card/Card.mdx +8 -2
  91. package/src/components/bs5/card/card.hbs +3 -17
  92. package/src/components/bs5/card/card.scss +103 -103
  93. package/src/components/bs5/containerLayout/containerLayout.hbs +100 -0
  94. package/src/components/bs5/containerLayout/containerLayout.stories.js +83 -0
  95. package/src/components/bs5/footer/Footer.js +3 -3
  96. package/src/components/bs5/footer/Footer.mdx +8 -2
  97. package/src/components/bs5/footer/customLinks.hbs +7 -0
  98. package/src/components/bs5/footer/feedbackForm.hbs +25 -0
  99. package/src/components/bs5/footer/followLinks.hbs +14 -0
  100. package/src/components/bs5/footer/footer.data.json +128 -84
  101. package/src/components/bs5/footer/footer.functions.js +2 -1
  102. package/src/components/bs5/footer/footer.hbs +229 -346
  103. package/src/components/bs5/footer/footer.scss +262 -272
  104. package/src/components/bs5/footer/footer.stories.js +4 -92
  105. package/src/components/bs5/footer/footer_formio.scss +219 -0
  106. package/src/components/bs5/formcheck/formcheck.hbs +1 -1
  107. package/src/components/bs5/formcheck/formcheck.scss +161 -139
  108. package/src/components/bs5/formcheck/stories/checkbox/checkbox.data.json +51 -46
  109. package/src/components/bs5/formcheck/stories/radio/radio.data.json +51 -46
  110. package/src/components/bs5/globalAlert/GlobalAlert.mdx +8 -2
  111. package/src/components/bs5/globalAlert/globalAlert.test.js +3 -11
  112. package/src/components/bs5/header/_header-variables.scss +272 -0
  113. package/src/components/bs5/header/header.functions.js +9 -9
  114. package/src/components/bs5/header/header.hbs +124 -878
  115. package/src/components/bs5/header/header.scss +279 -411
  116. package/src/components/bs5/header/header.stories.js +8 -28
  117. package/src/components/bs5/header/header.variant.coBrand.data.json +28 -40
  118. package/src/components/bs5/header/header.variant.endorsed.data.json +116 -150
  119. package/src/components/bs5/header/header.variant.masterBrand.data.json +116 -152
  120. package/src/components/bs5/header/header.variant.standAlone.data.json +118 -150
  121. package/src/components/bs5/header/header.variant.subBrand.data.json +32 -159
  122. package/src/components/bs5/header/headerBrand.hbs +35 -0
  123. package/src/components/bs5/icons/icons.scss +79 -72
  124. package/src/components/bs5/inpageAlert/InpageAlert.mdx +8 -2
  125. package/src/components/bs5/inpageAlert/inpageAlert.data.json +6 -6
  126. package/src/components/bs5/inpagenav/inpagenav.scss +37 -37
  127. package/src/components/bs5/link/link.data.json +77 -0
  128. package/src/components/bs5/link/link.hbs +41 -0
  129. package/src/components/bs5/{pageLayout/pageLayout.js → link/link.js} +4 -5
  130. package/src/components/bs5/link/link.mdx +16 -0
  131. package/src/components/bs5/link/link.scss +81 -0
  132. package/src/components/bs5/link/link.stories.js +126 -0
  133. package/src/components/bs5/linkColumns/linkColumns.mdx +8 -3
  134. package/src/components/bs5/logo/logo.data.json +1 -0
  135. package/src/components/bs5/logo/logoCOALandscape.hbs +110 -55
  136. package/src/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
  137. package/src/components/bs5/navbar/Navbar.js +2 -9
  138. package/src/components/bs5/navbar/navbar.data.json +191 -0
  139. package/src/components/bs5/navbar/navbar.functions.js +48 -196
  140. package/src/components/bs5/navbar/navbar.hbs +65 -245
  141. package/src/components/bs5/navbar/navbar.scss +684 -562
  142. package/src/components/bs5/navbar/navbar.stories.js +533 -0
  143. package/src/components/bs5/pageLayout/{FullWidthLandingPage.js → HomePage.js} +2 -2
  144. package/src/components/bs5/pageLayout/pageLayout.stories.js +242 -98
  145. package/src/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
  146. package/src/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
  147. package/src/components/bs5/pageLayout/templates/homePage.hbs +111 -0
  148. package/src/components/bs5/promotionalPanel/PromotionalPanel.mdx +8 -3
  149. package/src/components/bs5/searchInput/__snapshots__/searchInput.test.js.snap +10 -9
  150. package/src/components/bs5/searchInput/search.functions.js +94 -63
  151. package/src/components/bs5/searchInput/searchInput.data.json +2 -3
  152. package/src/components/bs5/searchInput/searchInput.hbs +9 -11
  153. package/src/components/bs5/searchInput/searchInput.scss +297 -255
  154. package/src/components/bs5/searchInput/searchInput.test.js +98 -90
  155. package/src/components/bs5/tabs/tabs.data.json +45 -44
  156. package/src/components/bs5/tabs/tabs.scss +544 -500
  157. package/src/components/bs5/tabs/tabs.stories.js +81 -51
  158. package/src/components/common/layout/container.scss +22 -0
  159. package/src/components/common/layout/content.scss +11 -4
  160. package/src/components/common/layout/grid.scss +26 -0
  161. package/src/css/main.scss +7 -2
  162. package/src/css/mixins/_index.scss +2 -1
  163. package/src/css/mixins/register-vars.scss +23 -0
  164. package/src/css/qld-variables.scss +106 -83
  165. package/src/css/utilities/_index.scss +1 -0
  166. package/src/css/utilities/responsive-visually-hidden.scss +10 -0
  167. package/src/js/handlebars.helpers.js +34 -34
  168. package/src/js/handlebars.partials.js +14 -6
  169. package/src/js/qld.bootstrap.js +10 -11
  170. package/dist/assets/components/bs5/footer/footerForgov.hbs +0 -279
  171. package/dist/assets/components/bs5/pageLayout/pageLayout.hbs +0 -34
  172. package/dist/assets/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
  173. package/dist/components/bs5/footer/footerForgov.hbs +0 -279
  174. package/dist/components/bs5/pageLayout/pageLayout.hbs +0 -34
  175. package/dist/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
  176. package/src/components/bs5/footer/_colours.scss +0 -149
  177. package/src/components/bs5/footer/_measurements.scss +0 -32
  178. package/src/components/bs5/footer/footerForgov.hbs +0 -279
  179. package/src/components/bs5/header/_colours.scss +0 -271
  180. package/src/components/bs5/header/_icons.scss +0 -10
  181. package/src/components/bs5/navbar/_colours.scss +0 -85
  182. package/src/components/bs5/navbar/_icons.scss +0 -64
  183. package/src/components/bs5/pageLayout/pageLayout.hbs +0 -34
  184. package/src/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
@@ -3,14 +3,14 @@
3
3
  -->
4
4
  <div class="container {{variantClass}}">
5
5
  <div class="qld-search-input {{customClass}} d-flex">
6
- <input id="{{ inputID }}" name=" {{ inputName }}" class="form-control" type="text" placeholder="{{placeholder}}"
6
+ <input id="{{ inputID }}" name=" {{ inputName }}" class="form-control" type="text"
7
7
  autocomplete="off" aria-label="{{ ariaLabel }}" {{#each tags}} data-{{@key}}="{{this}}" {{/each}} />
8
8
 
9
9
  {{#if suggestions}}
10
10
  <div class="suggestions suggestions__group d-none">
11
11
  <div class="default-suggestions">
12
- <div class="suggestions-category mt-2">
13
- <strong class="suggestions-category-label">Popular services</strong>
12
+ <div class="suggestions-category mt-16">
13
+ <strong class="suggestions-category-label d-block">Popular services</strong>
14
14
  <ul class="mt-2">
15
15
  {{#each default_suggestions.popular_services}}
16
16
  <li><a href="{{link}}">{{title}}</a></li>
@@ -18,11 +18,9 @@
18
18
  </ul>
19
19
  </div>
20
20
 
21
- <hr>
22
-
23
- <div class="suggestions-category mt-2">
24
- <strong class="suggestions-category-label">Browse by category</strong>
25
- <ul class="mt-2">
21
+ <div class="suggestions-category mt-16">
22
+ <strong class="suggestions-category-label d-block">Browse by category</strong>
23
+ <ul class="mt-12 mb-0">
26
24
  {{#each default_suggestions.categories}}
27
25
  <li><a href="{{link}}">{{title}}</a></li>
28
26
  {{/each}}
@@ -30,8 +28,8 @@
30
28
  </div>
31
29
 
32
30
  {{#if default_suggestions.options.view_more}}
33
- <div class="suggestions-category mt-4 mb-4">
34
- <a href="{{default_suggestions.options.href}}">{{default_suggestions.options.label}}</a>
31
+ <div class="suggestions-category">
32
+ <a class="px-16 pt-12 pb-16 d-block suggestions-category-view-more" href="{{default_suggestions.options.href}}">{{default_suggestions.options.label}}</a>
35
33
  </div>
36
34
  {{/if}}
37
35
  </div>
@@ -39,7 +37,7 @@
39
37
  </div>
40
38
  {{/if}}
41
39
  <button class="btn btn-primary" type="{{ buttonType }}" id="{{ buttonID }}">
42
- <span class="btn-icon"></span>
40
+ <span class="btn-icon mx-0"></span>
43
41
  <span class="btn-label">{{ buttonLabel }}</span>
44
42
  </button>
45
43
  </div>
@@ -1,304 +1,346 @@
1
1
  // ----------------------------------------------------------------------------------------------------------------------
2
2
  // Search input - palettes and second hand variables:
3
- @import './colours';
3
+ @import "./colours";
4
+
4
5
  // ----------------------------------------------------------------------------------------------------------------------
5
6
  .qld-search-input {
6
- //Default state - unfocused, unhovered
7
- --text-color: var(--qld-dark-grey-muted);
8
- --placeholder-color: var(--qld-dark-grey-muted);
9
- --border-color: var(--qld-soft-grey);
10
- --background-color: var(--qld-white);
11
- --outline-color: var(--qld-light-blue);
12
- --icon-color: var(--qld-dark-grey-muted);
13
- --icon-color-on-btn: var(--qld-white);
14
- --icon: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.5 6.5C11.5 4.71875 10.5312 3.09375 9 2.1875C7.4375 1.28125 5.53125 1.28125 4 2.1875C2.4375 3.09375 1.5 4.71875 1.5 6.5C1.5 8.3125 2.4375 9.9375 4 10.8438C5.53125 11.75 7.4375 11.75 9 10.8438C10.5312 9.9375 11.5 8.3125 11.5 6.5ZM10.5312 11.625C9.40625 12.5 8 13 6.5 13C2.90625 13 0 10.0938 0 6.5C0 2.9375 2.90625 0 6.5 0C10.0625 0 13 2.9375 13 6.5C13 8.03125 12.4688 9.4375 11.5938 10.5625L15.7812 14.7188C16.0625 15.0312 16.0625 15.5 15.7812 15.7812C15.4688 16.0938 15 16.0938 14.7188 15.7812L10.5312 11.625Z' fill='%23414141'/%3E%3C/svg%3E%0A");
15
-
16
- position: relative;
7
+ //Default state - unfocused, unhovered
8
+ --text-color: var(--qld-dark-grey-muted);
9
+ --placeholder-color: var(--qld-dark-grey-muted);
10
+ --border-color: var(--qld-soft-grey);
11
+ --background-color: var(--qld-white);
12
+ --outline-color: var(--qld-light-blue);
13
+ --icon-color: var(--qld-dark-grey-muted);
14
+ --icon-color-on-btn: var(--qld-white);
15
+ --icon: var(--qgds-icon-search);
16
+ position: relative;
17
+ width: 100%;
18
+
19
+ .form-control {
20
+ min-height: 52px;
21
+ }
22
+
23
+ @include media-breakpoint-up(lg) {
24
+ min-width: 22.5rem;
25
+ }
26
+
27
+ @include media-breakpoint-up(xl) {
28
+ min-width: 26rem;
29
+ }
30
+
31
+ //Search dropdown
32
+ .suggestions {
33
+ position: absolute;
34
+ left: 0;
35
+ top: 100%;
17
36
  width: 100%;
18
-
19
- @include media-breakpoint-up(lg) {
20
- min-width: 22.5rem;
21
- }
22
-
23
- //Search dropdown
24
- .suggestions {
25
- position: absolute;
26
- left: 0;
27
- top: 100%;
28
- width: 100%;
29
- z-index: 1;
30
- border-radius: .5rem;
31
- background: var(--#{$prefix}site-search-suggestions-bg);
32
- box-shadow: var(--#{$prefix}site-search_boxshadow);
33
- border-bottom: solid .25rem var(--#{$prefix}site-search-suggestions-hover__border_color);
34
-
35
- .suggestions-category {
36
- &-label {
37
- padding: 0 1rem;
38
- }
39
- ul {
40
- li {
41
- a {
42
- padding: 0.5rem 1rem;
43
- display: inline-block;
44
- width: 100%;
45
- }
46
- }
47
- }
37
+ z-index: 1;
38
+ border-radius: 0.5rem;
39
+ background: var(--#{$prefix}site-search-suggestions-bg);
40
+ box-shadow: var(--#{$prefix}site-search_boxshadow);
41
+ border-bottom: solid 0.25rem
42
+ var(--#{$prefix}site-search-suggestions-hover__border_color);
43
+
44
+ .suggestions-category {
45
+ &-view-more {
46
+ text-decoration: underline;
47
+ text-decoration-thickness: 0.5px;
48
+ text-decoration-color: rgba(
49
+ $color-default-color-light-text-default,
50
+ 0.5
51
+ );
52
+ &:hover {
53
+ background-color: var(--#{$prefix}site-search-suggestions-hover);
54
+ text-decoration-color: rgba(
55
+ $color-default-color-light-text-default,
56
+ 1
57
+ );
58
+ text-decoration-thickness: var(
59
+ --#{$prefix}link-underline-thickness-hover
60
+ );
48
61
  }
49
-
50
- hr {
51
- margin: 0;
62
+ }
63
+
64
+ &-label {
65
+ padding: 0 1rem;
66
+ }
67
+
68
+ ul {
69
+ li {
70
+ a {
71
+ padding: 0.75rem 1rem;
72
+ display: inline-block;
73
+ width: 100%;
74
+ }
52
75
  }
76
+ }
77
+ }
53
78
 
54
- // Featured search result styles
55
- .feature {
56
- background-color: var(--#{$prefix}site-search-suggestions-feature_bg);
57
-
58
- strong {
59
- color: var(--#{$prefix}site-search-suggestions-feature_text-color);
60
- }
61
-
62
- ul {
63
- li {
64
- &:hover {
65
- background-color: var(--#{$prefix}site-search-suggestions-feature_hover);
66
- }
67
-
68
- a {
69
- color: var(--#{$prefix}site-search-suggestions-feature_text-color);
70
- }
71
- }
72
- }
73
- }
79
+ hr {
80
+ margin: 0;
81
+ }
74
82
 
75
- // Show when active
76
- &.show {
77
- display: block;
83
+ // Featured search result styles
84
+ .feature {
85
+ background-color: var(--#{$prefix}site-search-suggestions-feature_bg);
86
+
87
+ strong {
88
+ color: var(--#{$prefix}site-search-suggestions-feature_text-color);
89
+ }
90
+
91
+ ul {
92
+ li {
93
+ &:hover {
94
+ background-color: var(
95
+ --#{$prefix}site-search-suggestions-feature_hover
96
+ );
97
+ }
98
+
99
+ a {
100
+ color: var(--#{$prefix}site-search-suggestions-feature_text-color);
101
+ }
78
102
  }
103
+ }
104
+ }
79
105
 
80
- &__group {
81
- padding: 0;
106
+ // Show when active
107
+ &.show {
108
+ display: block;
109
+ }
82
110
 
83
- a,
84
- strong {
85
- color: var(--site-search-input-color);
86
- font-weight: 400;
87
- font-size: 1rem;
88
- text-decoration: none;
89
- }
111
+ &__group {
112
+ padding: 0;
113
+
114
+ a,
115
+ strong {
116
+ color: var(--site-search-input-color);
117
+ font-weight: 400;
118
+ font-size: 1rem;
119
+ text-decoration: none;
120
+ }
121
+
122
+ strong {
123
+ font-weight: 600;
124
+ color: var(--#{$prefix}color-default-color-light-text-heading);
125
+ }
126
+
127
+ ul {
128
+ padding: 0;
129
+ margin: 0;
130
+ li {
131
+ min-height: 3rem;
132
+ list-style: none;
133
+ cursor: pointer;
134
+ margin-top: 0;
135
+
136
+ a {
137
+ vertical-align: middle;
138
+ vertical-align: -webkit-baseline-middle;
90
139
 
91
- strong {
92
- font-weight: 600;
140
+ &:hover {
141
+ text-decoration: underline;
93
142
  }
143
+ }
94
144
 
95
- ul {
96
- padding: 0;
97
-
98
- li {
99
- min-height: 3rem;
100
- list-style: none;
101
- cursor: pointer;
102
- margin-top: 0;
103
-
104
- a {
105
- vertical-align: middle;
106
- vertical-align: -webkit-baseline-middle;
107
-
108
- &:hover {
109
- text-decoration: underline;
110
- }
111
- }
145
+ &:hover {
146
+ background-color: var(--#{$prefix}site-search-suggestions-hover);
112
147
 
113
- &:hover {
114
- background-color: var(--#{$prefix}site-search-suggestions-hover);
115
-
116
- a {
117
- text-decoration: underline;
118
- }
119
-
120
- }
121
- }
148
+ a {
149
+ text-decoration: underline;
150
+ text-decoration-thickness: var(
151
+ --#{$prefix}link-underline-thickness-hover
152
+ );
122
153
  }
154
+ }
123
155
  }
156
+ }
124
157
  }
125
-
126
- &.full-width {
127
- max-width: 100%;
158
+ }
159
+
160
+ &.full-width {
161
+ max-width: 100%;
162
+ }
163
+
164
+ //SVG Search Icon
165
+ &::before {
166
+ content: "";
167
+ position: absolute;
168
+ top: 50%;
169
+ transform: translateY(-50%);
170
+ left: calc(1rem - 0.125rem);
171
+ width: 1rem;
172
+ height: 1rem;
173
+ background-color: var(--icon-color);
174
+ mask: var(--icon) center center / 1rem no-repeat;
175
+ mask-size: contain;
176
+ -webkit-mask-size: contain;
177
+ -webkit-mask: var(--icon) center center / 1rem no-repeat;
178
+ }
179
+
180
+ //Icon color is scoped against the parent container, not the input :(
181
+ &:has(.form-control:hover) {
182
+ --icon-color: var(--qld-dark-grey-muted);
183
+ }
184
+
185
+ &:has(.form-control:focus) {
186
+ --icon-color: var(--qld-text-grey);
187
+ }
188
+
189
+ .btn {
190
+ box-shadow: none;
191
+ min-width: auto;
192
+ }
193
+
194
+ .form-control {
195
+ padding: 0.75rem 1rem 0.75rem 2.5rem;
196
+ border-radius: 0.25rem;
197
+ border: 0.125rem solid var(--border-color);
198
+ background: var(--background-color);
199
+ padding-right: 7.5rem;
200
+ color: var(--text-color);
201
+
202
+ &::placeholder {
203
+ color: var(--placeholder-color);
128
204
  }
129
205
 
130
- //SVG Search Icon
131
- &::before {
132
- content: '';
133
- position: absolute;
134
- top: 50%;
135
- transform: translateY(-50%);
136
- left: calc(1rem - 0.125rem);
137
- width: 1.5rem;
138
- height: 1.5rem;
139
- background-color: var(--icon-color);
140
- mask: var(--icon) center center / 1.25rem no-repeat;
206
+ &:hover {
207
+ //Rescope hover state
208
+ --icon-color: var(--qld-dark-grey-muted);
209
+ --text-color: var(--qld-text-grey);
210
+ --placeholder-color: var(--qld-text-grey);
211
+ --border-color: var(--qld-light-action-primary);
212
+ --background-color: var(--qld-default-background-shade);
141
213
  }
142
214
 
143
- //Icon color is scoped against the parent container, not the input :(
144
- &:has(.form-control:hover) {
145
- --icon-color: var(--qld-dark-grey-muted);
146
- }
215
+ &:focus {
216
+ //Rescope focus state
217
+ --icon-color: var(--qld-text-grey);
218
+ --text-color: var(--qld-text-grey);
219
+ --placeholder-color: var(--qld-text-grey);
220
+ --border-color: var(--qld-soft-grey);
221
+ --background-color: var(--qld-white);
147
222
 
148
- &:has(.form-control:focus) {
149
- --icon-color: var(--qld-text-grey);
223
+ outline: 0.188rem solid var(--outline-color);
224
+ outline-offset: 0.125rem;
150
225
  }
151
-
152
- .btn {
153
- box-shadow: none;
154
- }
155
-
156
- .form-control {
157
- padding: 0.75rem 1rem 0.75rem 3rem;
158
- border-radius: 0.25rem;
159
- border: 0.125rem solid var(--border-color);
160
- background: var(--background-color);
161
- padding-right: 6rem;
162
- color: var(--text-color);
163
-
164
- &::placeholder {
165
- color: var(--placeholder-color);
166
- }
167
-
168
- &:hover {
169
- //Rescope hover state
170
- --icon-color: var(--qld-dark-grey-muted);
171
- --text-color: var(--qld-text-grey);
172
- --placeholder-color: var(--qld-text-grey);
173
- --border-color: var(--qld-light-action-primary);
174
- --background-color: var(--qld-default-background-shade);
175
- }
176
-
177
- &:focus {
178
- //Rescope focus state
179
- --icon-color: var(--qld-text-grey);
180
- --text-color: var(--qld-text-grey);
181
- --placeholder-color: var(--qld-text-grey);
182
- --border-color: var(--qld-soft-grey);
183
- --background-color: var(--qld-white);
184
-
185
- outline: 0.188rem solid var(--outline-color);
186
- outline-offset: 0.125rem;
187
- }
188
- }
189
- button {
190
- position: absolute;
191
- top: 0;
192
- bottom: 0;
193
- right: 0;
194
- border-radius: 0 0.25rem 0.25rem 0;
195
-
196
- // Adjust button padding to allow for input borders of 2px top and bottom
197
- padding-top: calc(0.75rem - 0.125rem);
198
- padding-bottom: calc(0.75rem - 0.125rem);
199
-
200
- //prep a button "search-icon" which is invoked at smaller screeen sizes below
201
- span.btn-icon {
202
- display: none;
203
- width: 1.5rem;
204
- height: 1.5rem;
205
- height: 1.5rem;
206
- margin-right: 0;
207
- background-color: var(--icon-color-on-btn);
208
- mask: var(--icon) center center / 1.25rem no-repeat;
209
- }
226
+ }
227
+
228
+ button {
229
+ position: absolute;
230
+ top: 0;
231
+ bottom: 0;
232
+ right: 0;
233
+ border-radius: 0 0.25rem 0.25rem 0;
234
+
235
+ // Adjust button padding to allow for input borders of 2px top and bottom
236
+ padding-top: calc(0.75rem - 0.125rem);
237
+ padding-bottom: calc(0.75rem - 0.125rem);
238
+
239
+ //prep a button "search-icon" which is invoked at smaller screeen sizes below
240
+ span.btn-icon {
241
+ display: none;
242
+ width: 1.5rem;
243
+ height: 1.5rem;
244
+ height: 1.5rem;
245
+ margin-right: 0;
246
+ background-color: var(--icon-color-on-btn);
247
+ mask: var(--icon) center center / 1.25rem no-repeat;
210
248
  }
249
+ }
211
250
  }
212
251
 
213
252
  @include media-breakpoint-up(md) {
214
- .qld-search-input {
215
- button {
216
- span.btn-label {
217
- display: block;
218
- }
219
- span.btn-icon {
220
- display: none;
221
- }
222
- }
253
+ .qld-search-input {
254
+ button {
255
+ span.btn-label {
256
+ display: block;
257
+ }
258
+
259
+ span.btn-icon {
260
+ display: none;
261
+ }
223
262
  }
263
+ }
224
264
  }
265
+
225
266
  //Adjustments for 991px and below
226
267
  // Apply styles for medium screens and down
227
268
  @include media-breakpoint-down(md) {
228
- .qld-search-input {
229
- button {
230
- span.btn-label {
231
- display: none;
232
- }
269
+ .qld-search-input {
270
+ button {
271
+ span.btn-label {
272
+ display: none;
273
+ }
274
+
275
+ //Show the search icon (on button) on small screens
276
+ span.btn-icon {
277
+ display: block;
278
+ }
279
+ }
233
280
 
234
- //Show the search icon (on button) on small screens
235
- span.btn-icon {
236
- display: block;
237
- }
238
- }
239
- .form-control {
240
- padding-left: 1rem;
241
- }
281
+ .form-control {
282
+ padding-left: 1rem;
283
+ padding-right: 4rem;
284
+ }
242
285
 
243
- #search-button {
244
- &.btn {
245
- padding: 0;
246
- margin: 0;
247
- width: 3rem;
286
+ #search-button {
287
+ &.btn {
288
+ padding: 0;
289
+ margin: 0;
290
+ width: 3rem;
248
291
 
249
- .btn-icon {
250
- margin-left: 0.65rem;
251
- }
252
- }
292
+ .btn-icon {
293
+ margin-left: 0.65rem;
253
294
  }
295
+ }
296
+ }
254
297
 
255
- //Hide the search icon (input field) on small screens
256
- &::before {
257
- content: none;
258
- }
298
+ //Hide the search icon (input field) on small screens
299
+ &::before {
300
+ content: none;
259
301
  }
302
+ }
260
303
  }
261
304
 
262
305
  .dark {
263
- .qld-search-input {
264
- // Rescope colours inside a dark container
306
+ .qld-search-input {
307
+ // Rescope colours inside a dark container
265
308
 
266
- // Default state - unfocused, unhovered
267
- --icon-color: #DEEBF9;
268
- --icon-color-on-btn: var(--qld-dark-action-text);
309
+ // Default state - unfocused, unhovered
310
+ --icon-color: #deebf9;
311
+ --icon-color-on-btn: var(--qld-dark-action-text);
269
312
 
270
- --text-color: #DEEBF9;
271
- --placeholder-color: #DEEBF9;
272
- --border-color: var(--qld-dark-alt-border);
273
- --background-color: var(--qld-dark-background);
313
+ --text-color: #deebf9;
314
+ --placeholder-color: #deebf9;
315
+ --border-color: var(--qld-dark-alt-border);
316
+ --background-color: var(--qld-dark-background);
274
317
 
275
- //Icon color is scoped against the parent container, not the input :(
276
- &:has(.form-control:hover) {
277
- --icon-color: var(--qld-white);
278
- }
279
-
280
- &:has(.form-control:focus) {
281
- --icon-color: var(--qld-text-grey);
282
- --text-color: var(--qld-text-grey);
283
- }
284
-
285
- .form-control {
286
- &:hover {
287
- //Dark - Hover state
288
- --text-color: var(--qld-white);
289
- --placeholder-color: var(--qld-white);
290
- --background-color: var(--qld-dark-background-shade);
291
- --border-color: var(--qld-dark-action-primary-hover);
292
- }
318
+ //Icon color is scoped against the parent container, not the input :(
319
+ &:has(.form-control:hover) {
320
+ --icon-color: var(--qld-white);
321
+ }
293
322
 
294
- &:focus {
295
- //Dark - Focus state
296
- --text-color: var(--qld-text-grey);
297
- --placeholder-color: var(--qld-text-grey);
298
- --border-color: var(--qld-light-grey);
299
- --background-color: var(--qld-white);
300
- }
323
+ &:has(.form-control:focus) {
324
+ --icon-color: var(--qld-text-grey);
325
+ --text-color: var(--qld-text-grey);
326
+ }
301
327
 
302
- }
328
+ .form-control {
329
+ &:hover {
330
+ //Dark - Hover state
331
+ --text-color: var(--qld-white);
332
+ --placeholder-color: var(--qld-white);
333
+ --background-color: var(--qld-dark-background-shade);
334
+ --border-color: var(--qld-dark-action-primary-hover);
335
+ }
336
+
337
+ &:focus {
338
+ //Dark - Focus state
339
+ --text-color: var(--qld-text-grey);
340
+ --placeholder-color: var(--qld-text-grey);
341
+ --border-color: var(--qld-light-grey);
342
+ --background-color: var(--qld-white);
343
+ }
303
344
  }
304
- }
345
+ }
346
+ }