@qld-gov-au/qgds-bootstrap5 2.0.7 → 2.0.9

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 (115) hide show
  1. package/.esbuild/plugins/qgds-plugin-handlebar-partial-builder.js +76 -66
  2. package/.storybook/preview.js +1 -1
  3. package/dist/assets/components/bs5/footer/footer.hbs +20 -18
  4. package/dist/assets/components/bs5/head/head.hbs +1 -1
  5. package/dist/assets/components/bs5/header/header.hbs +40 -52
  6. package/dist/assets/components/bs5/header/headerBrand.hbs +9 -10
  7. package/dist/assets/components/bs5/image/image.hbs +8 -5
  8. package/dist/assets/components/bs5/logo/logo.hbs +2 -0
  9. package/dist/assets/components/bs5/logo/logoCOADeliveringForQLD.hbs +49 -0
  10. package/dist/assets/components/bs5/logo/logoCOALandscape.hbs +55 -109
  11. package/dist/assets/components/bs5/logo/logoCOALandscape2Lines.hbs +55 -55
  12. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithForm.hbs +112 -93
  13. package/dist/assets/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +57 -53
  14. package/dist/assets/components/bs5/searchInput/searchInput.hbs +5 -5
  15. package/dist/assets/css/qld.bootstrap.css +1 -1
  16. package/dist/assets/css/qld.bootstrap.css.map +3 -3
  17. package/dist/assets/css/qld.bootstrap.legacy.css +1 -1
  18. package/dist/assets/css/qld.bootstrap.legacy.css.map +3 -3
  19. package/dist/assets/img/coa-delivering-for-qld.svg +47 -0
  20. package/dist/assets/img/coa-delivering-for-qld.svg.old +58 -0
  21. package/dist/assets/img/coa-landscape-2lines.svg +63 -0
  22. package/dist/assets/img/coa-landscape-web.svg +56 -0
  23. package/dist/assets/js/handlebars.helpers.bundle.js +1 -1
  24. package/dist/assets/js/handlebars.helpers.bundle.js.map +3 -3
  25. package/dist/assets/js/handlebars.init.min.js +720 -708
  26. package/dist/assets/js/handlebars.init.min.js.map +4 -4
  27. package/dist/assets/js/handlebars.partials.js +720 -708
  28. package/dist/assets/js/handlebars.partials.js.map +4 -4
  29. package/dist/assets/js/qld.bootstrap.min.js +3 -3
  30. package/dist/assets/js/qld.bootstrap.min.js.map +3 -3
  31. package/dist/assets/node/handlebars.init.min.js +239 -199
  32. package/dist/assets/node/handlebars.init.min.js.map +3 -3
  33. package/dist/components/bs5/footer/footer.hbs +20 -18
  34. package/dist/components/bs5/head/head.hbs +1 -1
  35. package/dist/components/bs5/header/header.hbs +40 -52
  36. package/dist/components/bs5/header/headerBrand.hbs +9 -10
  37. package/dist/components/bs5/image/image.hbs +8 -5
  38. package/dist/components/bs5/logo/logo.hbs +2 -0
  39. package/dist/components/bs5/logo/logoCOADeliveringForQLD.hbs +49 -0
  40. package/dist/components/bs5/logo/logoCOALandscape.hbs +55 -109
  41. package/dist/components/bs5/logo/logoCOALandscape2Lines.hbs +55 -55
  42. package/dist/components/bs5/pageLayout/templates/contentPageWithForm.hbs +112 -93
  43. package/dist/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +57 -53
  44. package/dist/components/bs5/searchInput/searchInput.hbs +5 -5
  45. package/dist/package.json +12 -12
  46. package/dist/sample-data/breadcrumbs/breadcrumbs.data.json +1 -1
  47. package/dist/sample-data/header/header.variant.coBrand.data.json +5 -8
  48. package/dist/sample-data/header/header.variant.endorsed.data.json +3 -6
  49. package/dist/sample-data/header/header.variant.masterBrand.data.json +1 -6
  50. package/dist/sample-data/header/header.variant.standAlone.data.json +3 -6
  51. package/dist/sample-data/header/header.variant.subBrand.data.json +5 -8
  52. package/dist/sample-data/image/image.data.json +4 -2
  53. package/esbuild.js +1 -1
  54. package/package.json +12 -12
  55. package/src/components/bs5/banner/banner.scss +30 -21
  56. package/src/components/bs5/banner/banner.stories.js +25 -16
  57. package/src/components/bs5/breadcrumbs/breadcrumbs.data.json +1 -1
  58. package/src/components/bs5/breadcrumbs/breadcrumbs.scss +7 -2
  59. package/src/components/bs5/card/card.scss +1 -1
  60. package/src/components/bs5/footer/footer.hbs +20 -18
  61. package/src/components/bs5/footer/footer.scss +7 -5
  62. package/src/components/bs5/header/Header.js +25 -0
  63. package/src/components/bs5/header/_header-variables.scss +61 -247
  64. package/src/components/bs5/header/header.functions.js +10 -15
  65. package/src/components/bs5/header/header.hbs +40 -52
  66. package/src/components/bs5/header/header.scss +170 -158
  67. package/src/components/bs5/header/header.stories.js +37 -206
  68. package/src/components/bs5/header/header.variant.coBrand.data.json +5 -8
  69. package/src/components/bs5/header/header.variant.endorsed.data.json +3 -6
  70. package/src/components/bs5/header/header.variant.masterBrand.data.json +1 -6
  71. package/src/components/bs5/header/header.variant.standAlone.data.json +3 -6
  72. package/src/components/bs5/header/header.variant.subBrand.data.json +5 -8
  73. package/src/components/bs5/header/headerBrand.hbs +9 -10
  74. package/src/components/bs5/image/image.data.json +4 -2
  75. package/src/components/bs5/image/image.hbs +8 -5
  76. package/src/components/bs5/image/image.scss +29 -7
  77. package/src/components/bs5/image/image.stories.js +77 -57
  78. package/src/components/bs5/inpageAlert/inpageAlert.scss +107 -120
  79. package/src/components/bs5/linkColumns/linkColumns.scss +18 -25
  80. package/src/components/bs5/logo/logo.hbs +2 -0
  81. package/src/components/bs5/logo/logoCOADeliveringForQLD.hbs +49 -0
  82. package/src/components/bs5/logo/logoCOALandscape.hbs +55 -109
  83. package/src/components/bs5/logo/logoCOALandscape2Lines.hbs +55 -55
  84. package/src/components/bs5/navbar/navbar.scss +36 -14
  85. package/src/components/bs5/pageLayout/pageLayout.stories.js +11 -45
  86. package/src/components/bs5/pageLayout/templates/contentPageWithForm.hbs +112 -93
  87. package/src/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +57 -53
  88. package/src/components/bs5/searchInput/SearchInput.js +3 -5
  89. package/src/components/bs5/searchInput/__snapshots__/searchInput.test.js.snap +5 -5
  90. package/src/components/bs5/searchInput/searchInput.hbs +5 -5
  91. package/src/components/bs5/searchInput/searchInput.scss +17 -5
  92. package/src/components/bs5/tag/tag--large.stories.js +53 -0
  93. package/src/components/bs5/tag/tag--standard.stories.js +39 -0
  94. package/src/components/bs5/tag/tag--status.stories.js +97 -0
  95. package/src/components/bs5/tag/tag.scss +67 -36
  96. package/src/components/bs5/tag/tag.stories.js +69 -106
  97. package/src/css/main.scss +2 -2
  98. package/src/css/mixins/_index.scss +1 -0
  99. package/src/css/mixins/focusable.scss +6 -5
  100. package/src/css/mixins/make-link.scss +40 -0
  101. package/src/css/qld-theme.scss +16 -8
  102. package/src/css/qld-type.scss +3 -73
  103. package/src/css/variables/animation.scss +5 -0
  104. package/src/img/coa-delivering-for-qld.svg +47 -0
  105. package/src/img/coa-delivering-for-qld.svg.old +58 -0
  106. package/src/img/coa-landscape-2lines.svg +63 -0
  107. package/src/img/coa-landscape-web.svg +56 -0
  108. package/src/js/handlebars.helpers.js +51 -38
  109. package/src/js/handlebars.partials.js +12 -10
  110. package/dist/assets/img/_coa_header-logo-qgov--stacked.svg +0 -171
  111. package/dist/assets/img/_coa_header-logo-qgov-masterbrand.svg +0 -56
  112. package/dist/assets/img/_coa_preheader-logo-qgov.svg +0 -56
  113. package/src/img/_coa_header-logo-qgov--stacked.svg +0 -171
  114. package/src/img/_coa_header-logo-qgov-masterbrand.svg +0 -56
  115. package/src/img/_coa_preheader-logo-qgov.svg +0 -56
@@ -168,7 +168,6 @@
168
168
  color: var(--link-color);
169
169
  text-decoration-color: inherit;
170
170
  padding: 0;
171
- // transition:none;
172
171
  &:after {
173
172
  content: "";
174
173
  content: none;
@@ -211,6 +210,15 @@
211
210
  width: 100%;
212
211
  border-block-end: 0;
213
212
  margin-block-end: 0;
213
+ position: relative;
214
+ &::before {
215
+ content: "";
216
+ position: absolute;
217
+ border-inline-start: 5px solid var(--link-border-color);
218
+ left: -5px;
219
+ top: 0;
220
+ bottom: calc(var(--border-width) * -1);
221
+ }
214
222
  &:hover,
215
223
  &.active {
216
224
  border-block-end: 0;
@@ -218,6 +226,9 @@
218
226
  margin-block-end: 0;
219
227
  border-block-end: 0;
220
228
  }
229
+ &::before {
230
+ border-inline-start: 0.25rem solid var(--link-border-color-hover);
231
+ }
221
232
  }
222
233
  &:hover {
223
234
  .qld-icon {
@@ -284,6 +295,9 @@
284
295
  /* House keeping */
285
296
  --icon-dir: 1;
286
297
  --navbar-max-width: 26.25rem;
298
+ --border-width: 1px;
299
+ --nav-link-padding-block: 0.625rem;
300
+
287
301
  :dir(rtl) {
288
302
  --icon-dir: -1;
289
303
  }
@@ -434,6 +448,9 @@
434
448
  display: none;
435
449
  }
436
450
  .container {
451
+ --padding-block-size: calc(var(--nav-link-padding-block) * 2);
452
+ min-height: calc(var(--padding-block-size) + 2rem);
453
+ min-height: round(up, calc(var(--padding-block-size) + 2rem), 1px);
437
454
  position: relative;
438
455
  }
439
456
  .nav-item {
@@ -453,6 +470,7 @@
453
470
  background-color: var(--dropdown-bg-color);
454
471
  border-block-end: var(--horizontal-bar-border-width) solid var(--dropdown-bg-color);
455
472
  font-weight: 600;
473
+ z-index: 20;
456
474
  &:hover {
457
475
  background-color: var(--dropdown-bg-color);
458
476
  border-block-end: var(--horizontal-bar-border-width) solid var(--link-border-color-hover);
@@ -475,7 +493,7 @@
475
493
  .navbar-nav a.nav-link,
476
494
  a.dropdown-item {
477
495
  color: var(--link-color);
478
- padding-block: 0.625rem;
496
+ padding-block: var(--nav-link-padding-block);
479
497
  padding-inline: 0.75rem;
480
498
  display: flex;
481
499
  line-height: 2rem;
@@ -517,10 +535,7 @@
517
535
  }
518
536
  }
519
537
  .dropdown-menu.show {
520
- --horizontal-bar-border-widthx2: calc(
521
- var(--horizontal-bar-border-width) * 2
522
- );
523
- margin-block-start: calc(var(--horizontal-bar-border-widthx2) - 1px);
538
+ margin-block-start: calc(var(--horizontal-bar-border-width) - var(--border-width));
524
539
  inset-inline: 0;
525
540
  background-color: var(--dropdown-bg-color);
526
541
  padding: 4rem;
@@ -533,16 +548,21 @@
533
548
  grid-template-columns: repeat(3, 1fr);
534
549
  column-gap: 2rem;
535
550
  row-gap: 0;
551
+ z-index: 10;
552
+ border-width: 0;
536
553
  @include media-breakpoint-up(xl) {
537
554
  column-gap: 4rem;
538
555
  row-gap: 0;
539
556
  }
557
+ @include media-breakpoint-up(md) {
558
+ padding-block: 3rem;
559
+ }
540
560
  &::before {
541
561
  content: "";
542
562
  position: absolute;
543
563
  height: var(--horizontal-bar-border-width);
544
564
  inset: 0;
545
- inset-block-start: calc(var(--horizontal-bar-border-width) * -1);
565
+ inset-block-start: 0;
546
566
  background-color: var(--dropdown-bg-color);
547
567
  }
548
568
  li {
@@ -563,9 +583,9 @@
563
583
  padding-inline-start: 0;
564
584
  padding-inline-end: 0.5rem;
565
585
  white-space: normal;
566
- border-block-end: 1px solid var(--border-color);
586
+ border-block-end: var(--border-width) solid var(--border-color);
567
587
  padding-block-start: 1rem;
568
- padding-block-end: calc(1rem - 1px);
588
+ padding-block-end: calc(1rem - var(--border-width));
569
589
  gap: 0.75rem;
570
590
  font-weight: 600;
571
591
  transition:
@@ -615,7 +635,7 @@
615
635
  grid-column: 1 / -1;
616
636
  .dropdown-item {
617
637
  border-block-end: 0;
618
- padding-block-end: 0;
638
+ padding-block: 0;
619
639
  gap: 1rem;
620
640
  transition: gap var(--animation-time) ease-in-out;
621
641
  font-size: 1.5rem;
@@ -646,17 +666,18 @@
646
666
  flex-direction: row-reverse;
647
667
  padding-inline-end: 0.5rem;
648
668
  gap: 0.5rem;
669
+ font-size: 1.25rem;
649
670
  transition:
650
671
  gap var(--animation-time) ease-in-out,
651
672
  padding-inline-end var(--animation-time) ease-in-out;
652
673
  &::before {
653
674
  content: "";
654
- mask-image: var(--qgds-icon-arrow-right);
675
+ mask-image: var(--qgds-icon-view-all);
655
676
  mask-repeat: no-repeat;
656
677
  mask-position: 0;
657
678
  background-color: var(--action-icon-color);
658
- height: 1.25rem;
659
- width: 1.25rem;
679
+ height: 2rem;
680
+ width: 2rem;
660
681
  transform: scaleX(var(--icon-dir));
661
682
  }
662
683
  &::after {
@@ -803,4 +824,5 @@
803
824
  //Prevent double scrollbar when navabr is open
804
825
  body:has(.navbar.show) {
805
826
  overflow: hidden;
806
- }
827
+ }
828
+
@@ -1,6 +1,7 @@
1
1
  import { HomePage } from "./HomePage.js";
2
2
  import { ContentPageWithSideNavigation } from "./ContentPageWithSideNavigation.js";
3
3
  import { ContentPageWithForm } from "./ContentPageWithForm.js";
4
+
4
5
  //Data
5
6
  import masterbrand_variant from "../header/header.variant.masterBrand.data.json";
6
7
  import menu_state from "../navbar/navbar.data.json";
@@ -32,23 +33,23 @@ const sideNavData = {
32
33
  navtitlelink: "#optionallink",
33
34
  navlist: [
34
35
  {
35
- link: "#https://www.qld.gov.au/transport/registration/register/heavy",
36
- label: "Home page",
36
+ link: "#",
37
+ label: "Page link",
37
38
  class: "",
38
39
  },
39
40
  {
40
41
  link: "#",
41
- label: "Content page (no bar)",
42
+ label: "Page link",
42
43
  class: "",
43
44
  },
44
45
  {
45
46
  link: "#",
46
- label: "Content page (with bar)",
47
- class: "",
47
+ label: "Active Page",
48
+ class: "active",
48
49
  },
49
50
  {
50
51
  link: "#",
51
- label: "Page with form",
52
+ label: "Page link",
52
53
  class: "",
53
54
  },
54
55
  ],
@@ -70,8 +71,6 @@ const defaultData = {
70
71
  },
71
72
  contentFooter: contentFooterData,
72
73
  sidenav: sideNavData,
73
- // Mapping some @root header fields to this pageLayout root object, so template partials can resolve values
74
- // assets: masterbrand_variant.assets,
75
74
  };
76
75
 
77
76
  export default {
@@ -118,18 +117,7 @@ export const Default = {
118
117
  bannerType: "no-banner",
119
118
  breadcrumbs: breadcrumbsData.default,
120
119
  },
121
- sidenav: {
122
- ...sideNavData,
123
- navlist: [
124
- sideNavData.navlist[0],
125
- {
126
- ...sideNavData.navlist[1],
127
- class: "active",
128
- },
129
- sideNavData.navlist[2],
130
- sideNavData.navlist[3],
131
- ],
132
- },
120
+ sidenav: sideNavData,
133
121
  },
134
122
  };
135
123
 
@@ -149,7 +137,7 @@ export const Home = {
149
137
  abstract: "Your gateway to government services and information.",
150
138
  bannerType: "banner-advanced",
151
139
  backgroundType: "with-hero-image",
152
- "image.classes": "align-grid",
140
+ ["image.classes"]: "align-grid",
153
141
  callToAction: "buttons",
154
142
  buttons: [
155
143
  {
@@ -244,18 +232,7 @@ export const ContentPageBasicBanner = {
244
232
  "Everything you need to know about registering your vehicle in Queensland.",
245
233
  breadcrumbs: breadcrumbsData.default,
246
234
  },
247
- sidenav: {
248
- ...sideNavData,
249
- navlist: [
250
- sideNavData.navlist[0],
251
- sideNavData.navlist[1],
252
- {
253
- ...sideNavData.navlist[2],
254
- class: "active",
255
- },
256
- sideNavData.navlist[3],
257
- ],
258
- },
235
+ sidenav: sideNavData,
259
236
  },
260
237
  };
261
238
 
@@ -281,18 +258,7 @@ export const ContentPageWithSingleForm = {
281
258
  abstract: "Get in touch with us using the form below.",
282
259
  breadcrumbs: breadcrumbsData.default,
283
260
  },
284
- sidenav: {
285
- ...sideNavData,
286
- navlist: [
287
- sideNavData.navlist[0],
288
- sideNavData.navlist[1],
289
- sideNavData.navlist[2],
290
- {
291
- ...sideNavData.navlist[3],
292
- class: "active",
293
- },
294
- ],
295
- },
261
+ sidenav: sideNavData,
296
262
  content: `
297
263
  <h1>Contact Form</h1>
298
264
  <p>Please fill out the form below and we'll get back to you as soon as possible.</p>
@@ -2,108 +2,127 @@
2
2
  <html lang="en">
3
3
 
4
4
  <head>
5
- <meta charset="UTF-8">
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
- <title>{{title}}</title>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>{{title}}</title>
8
8
  </head>
9
9
 
10
10
  <body>
11
- {{> globalAlert globalAlert}}
12
- {{> header header}}
13
- {{> navbar navbar}}
11
+ <!-- Global ALert -->
12
+ {{> globalAlert globalAlert}}
14
13
 
15
- {{#if banner}}
16
- {{> banner banner}}
14
+ <!-- Header -->
15
+ {{> header header }}
16
+
17
+ <!-- Navbar -->
18
+ {{> navbar navbar}}
19
+
20
+ {{#if banner}}
21
+ {{> banner banner}}
22
+ {{/if}}
23
+
24
+ <div class="container mt-40 mt-lg-64">
25
+
26
+ {{#if breadcrumbs}}
27
+ <!-- breadcrumbs -->
28
+ {{> breadcrumbs breadcrumbs}}
17
29
  {{/if}}
18
30
 
19
- <main>
20
- <div class="container mt-40 mt-lg-64">
21
- {{#if breadcrumbs}}
22
- <div class="row">
23
- <div class="col-12">
24
- {{> breadcrumbs breadcrumbs}}
25
- </div>
31
+ <!-- Start Main Content Body -->
32
+ <div class="row">
33
+
34
+ <!-- Start Side navigation column (span 3) -->
35
+ <div class="col-12 col-lg-3">
36
+ <!-- QGDS Side Navigation Component -->
37
+ {{> sidenav sidenav}}
38
+ </div>
39
+ <!-- End Side navigation column -->
40
+
41
+ <!-- Start Main Column (span 8) -->
42
+ <div class="col-12 col-lg-8 mt-40 mt-lg-0">
43
+
44
+ <!-- Main Content div, includes a 2rem/32px horizontal padding on large screens and up -->
45
+ <main class="px-lg-32">
46
+
47
+ <h1 id="section-heading">Single page form (H1)</h1>
48
+
49
+ <p>Your feedback is important to us. It tells us how we can improve and what we’re doing well. Your feedback
50
+ is confidential.</p>
51
+
52
+ <h2 id="form-heading">Enquiry form (H2)</h2>
53
+
54
+ {{#if inpageAlert}}
55
+ <!-- Inpage Alert -->
56
+ <div class="mb-32">
57
+ {{> inpageAlert inpageAlert}}
58
+ </div>
59
+ {{/if}}
60
+
61
+ <!-- Example WYSIWYG content -->
62
+ <p>Any information submitted using this form will be used in line with our privacy statement.</p>
63
+ <p>Required fields are marked with an *</p>
64
+
65
+
66
+ {{#if form}}
67
+ <!-- Example Form, with 2rem vertical spacing -->
68
+ <form class="qld-form my-32">
69
+ {{#each form.fields1}}
70
+ <div class="form-group mb-32">
71
+ {{#ifCond type '==' 'textbox'}}
72
+ {{> textbox this}}
73
+ {{else ifCond type '==' 'textarea'}}
74
+ {{> textarea this}}
75
+ {{else ifCond type '==' 'radio'}}
76
+ {{> formcheck this}}
77
+ {{/ifCond}}
26
78
  </div>
27
- {{/if}}
79
+ {{/each}}
80
+
81
+ <h3 id="contact-details">Contact details (H3)</h3>
82
+
83
+ {{#each form.fields2}}
84
+ <div class="form-group mb-32">
85
+ {{#ifCond type '==' 'textbox'}}
86
+ {{> textbox this}}
87
+ {{else ifCond type '==' 'select'}}
88
+ {{> select this}}
89
+ {{else ifCond type '==' 'checkbox'}}
90
+ {{> formcheck this}}
91
+ {{/ifCond}}
92
+ </div>
93
+ {{/each}}
28
94
 
29
- <div class="row">
30
- {{#if sidenav}}
31
- <!-- Side navigation Col -->
32
- <div class="col-12 col-lg-3 mt-5 mt-lg-0 mb-32 mb-lg-0">
33
- {{> sidenav sidenav}}
34
- </div>
35
- {{/if}}
36
-
37
- <!-- Content Col -->
38
- <div class="col-lg-8 col-md-7 ps-1 ps-md-32">
39
-
40
- <!-- Main Content Sections -->
41
- <div class="content-section mb-5 px-1 px-md-32">
42
-
43
- <h1 id="section-heading">Single page form (H1)</h1>
44
- <p>
45
- Your feedback is important to us. It tells us how we can improve and what we’re doing well. Your feedback is confidential.
46
- </p>
47
-
48
- <h2 id="form-heading">Enquiry form (H2)</h2>
49
-
50
- {{#if inpageAlert}}
51
- <!-- Inpage Alert -->
52
- <div class="mb-32">
53
- {{> inpageAlert inpageAlert}}
54
- </div>
55
- {{/if}}
56
-
57
- <div class="mb-32">
58
- <p>Any information submitted using this form will be used in line with our privacy statement.</p>
59
- <p>Required fields are marked with an *</p>
60
- </div>
61
-
62
- {{#if form}}
63
- <form class="qld-form mb-5">
64
- {{#each form.fields1}}
65
- <div class="form-group mb-32">
66
- {{#ifCond type '==' 'textbox'}}
67
- {{> textbox this}}
68
- {{else ifCond type '==' 'textarea'}}
69
- {{> textarea this}}
70
- {{else ifCond type '==' 'radio'}}
71
- {{> formcheck this}}
72
- {{/ifCond}}
73
- </div>
74
- {{/each}}
75
-
76
- <h3 id="form-heading">Contact details (H3)</h3>
77
-
78
- {{#each form.fields2}}
79
- <div class="form-group mb-32">
80
- {{#ifCond type '==' 'textbox'}}
81
- {{> textbox this}}
82
- {{else ifCond type '==' 'select'}}
83
- {{> select this}}
84
- {{else ifCond type '==' 'checkbox'}}
85
- {{> formcheck this}}
86
- {{/ifCond}}
87
- </div>
88
- {{/each}}
89
-
90
- {{#if form.buttons}}
91
- <div class="form-actions d-flex mt-5 gap-4">
92
- {{#each form.buttons}}
93
- {{> button this}}
94
- {{/each}}
95
- </div>
96
- {{/if}}
97
- </form>
98
- {{/if}}
99
-
100
- </div>
101
- </div>
102
- {{> contentFooter contentFooter}}
95
+ {{#if form.buttons}}
96
+ <div class="form-actions d-flex mt-5 gap-4">
97
+ {{#each form.buttons}}
98
+ {{> button this}}
99
+ {{/each}}
103
100
  </div>
104
- </div>
105
- </main>
106
- {{> footer footer}}
101
+ {{/if}}
102
+ </form>
103
+ {{/if}}
104
+
105
+ </main>
106
+
107
+ </div>
108
+ <!-- End Column (span 8) -->
109
+
110
+ </div>
111
+ <!-- End Content Row -->
112
+
113
+ <!-- Start QGDS Content Footer -->
114
+ <div class="mt-64">
115
+ {{> contentFooter contentFooter}}
116
+ </div>
117
+
118
+ </div>
119
+ <!-- End Main .container -->
120
+
121
+ <!-- Start QGDS Footer -->
122
+ {{> footer footer}}
123
+ <!-- End QGDS Footer -->
124
+
107
125
  </body>
108
126
 
127
+
109
128
  </html>
@@ -12,7 +12,7 @@
12
12
  {{> globalAlert globalAlert}}
13
13
 
14
14
  <!-- Header -->
15
- {{> header header }}
15
+ {{> header header }}
16
16
 
17
17
  <!-- Navbar -->
18
18
  {{> navbar navbar}}
@@ -21,40 +21,37 @@
21
21
  {{> banner banner}}
22
22
  {{/if}}
23
23
 
24
- <main>
24
+ <div class="container mt-40 mt-lg-64">
25
25
 
26
- <div class="container mt-40 mt-lg-64">
27
- {{#if breadcrumbs}}
28
- <div class="row">
29
- <div class="col-12">
30
- <!-- breadcrumbs -->
31
- {{> breadcrumbs breadcrumbs}}
32
- </div>
33
- </div>
34
- {{/if}}
26
+ {{#if breadcrumbs}}
27
+ <!-- breadcrumbs -->
28
+ {{> breadcrumbs breadcrumbs}}
29
+ {{/if}}
30
+
31
+ <!-- Start Main Content Body -->
32
+ <div class="row">
35
33
 
36
- <!-- Main Grid Layout: Side navigation and content -->
37
- <div class="row">
34
+ <!-- Start Side navigation column (span 3) -->
35
+ <div class="col-12 col-lg-3">
36
+ <!-- QGDS Side navigation Component -->
37
+ {{> sidenav sidenav}}
38
+ </div>
39
+ <!-- End Side navigation column -->
38
40
 
39
- <!-- Side navigation column -->
40
- <div class="col-12 col-lg-3 mt-0 pe-lg-0">
41
- {{> sidenav sidenav}}
42
- </div>
43
- <!-- End Side navigation column -->
41
+ <!-- Start Main Column (span 8) -->
42
+ <div class="col-12 col-lg-8 mt-40 mt-lg-0">
44
43
 
45
- <!-- Content Column -->
46
- <div class="col-lg-8 mt-40 mt-lg-0 ms-lg-32 ps-lg-32">
44
+ <!-- Main Content div, includes a 2rem/32px horizontal padding on large screens and up -->
45
+ <main class="px-lg-32">
47
46
 
48
47
  {{#if inpagenav}}
49
- <!-- Inpagenav Component (.mb-64 provides vertical spacing) -->
48
+ <!-- QGDS Inpagenav Component -->
50
49
  {{> inpagenav inpagenav}}
51
50
  {{/if}}
52
51
 
53
-
54
-
55
52
  <!-- Content Section with top vertical spacer (2rem mobile, 4rem LG and above) -->
56
53
  <div class="mt-32 mt-lg-64">
57
- <h2 id="section-heading">Section heading (H2)</h2>
54
+ <h2 id="section-heading">Section heading (H2)</h2>
58
55
  <p>
59
56
  Lorem ipsum dolor sit amet consectetur. Sed facilisis purus eu convallis ut. Morbi condimentum volutpat
60
57
  feugiat pellentesque. Auctor amet auctor dolor metus eget diam. Facilisis vitae venenatis vestibulum
@@ -67,20 +64,20 @@
67
64
  </div>
68
65
 
69
66
 
70
-
71
67
  <!-- Content Section with top vertical spacer (2rem mobile, 4rem LG and above) -->
72
68
  <div class="mt-32 mt-lg-64">
73
69
 
74
70
  <h2 id="content-heading">Content heading (H2)</h2>
75
-
76
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
71
+
72
+ <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et
73
+ dolore magna aliqua.</p>
77
74
 
78
75
  {{#if calloutdata}}
79
- <!-- Callout Component -->
76
+ <!-- QGDS Callout Component -->
80
77
  {{> callout calloutdata}}
81
78
  {{/if}}
82
79
  </div>
83
-
80
+
84
81
 
85
82
 
86
83
  <!-- Content Section with top vertical spacer (2rem mobile, 2.5rem LG and above) -->
@@ -90,12 +87,12 @@
90
87
 
91
88
  <h4 id="fees-and-charges">Fees and charges (H4)</h4>
92
89
  <p>Details about fees and charges for vehicle registration.</p>
93
-
94
-
90
+
91
+
95
92
  {{#if accordionItems}}
96
- <!-- QGDS Accordion Component with 1.5rem vertical spacer -->
93
+ <!-- QGDS Accordion Component with 24px/1.5rem margin-top -->
97
94
  <div class="mt-24">
98
- {{> accordion accordionItems}}
95
+ {{> accordion accordionItems}}
99
96
  </div>
100
97
  {{/if}}
101
98
  </div>
@@ -110,46 +107,53 @@
110
107
 
111
108
  <!-- Emphasis Container, with top vertical spacer: 2rem default (mobile), 4rem LG and above -->
112
109
  <div class="mt-40 mt-lg-64 bg-light content-emphasis">
113
-
110
+
114
111
  <h2 id="inspection">Section heading (H2) with emphasis</h2>
115
-
116
- <p>Lorem ipsum dolor sit amet consectetur. Viverra eu pulvinar a eu mauris ac at ultricies est. Tincidunt ultrices commodo vestibulum non netus. </p>
117
-
112
+
113
+ <p>Lorem ipsum dolor sit amet consectetur. Viverra eu pulvinar a eu mauris ac at ultricies est. Tincidunt
114
+ ultrices commodo vestibulum non netus. </p>
115
+
118
116
  <!-- QGDS Call To Action button -->
119
117
  {{> callToAction callToAction}}
120
-
121
- </div>
122
-
123
118
 
119
+ </div>
124
120
 
125
121
  <!-- Top vertical spacer: 2rem default (mobile), 4rem LG and above -->
126
122
  <div class="mt-32 mt-lg-64">
127
123
  <h2 id="inspection">Section heading (H2)</h2>
128
- <p>Lorem ipsum dolor sit amet consectetur. Viverra eu pulvinar a eu mauris ac at ultricies est. Tincidunt ultrices commodo vestibulum non netus. </p>
129
-
124
+ <p>Lorem ipsum dolor sit amet consectetur. Viverra eu pulvinar a eu mauris ac at ultricies est. Tincidunt
125
+ ultrices commodo vestibulum non netus. </p>
126
+
130
127
  {{#if table}}
131
- <!-- Table Component (.my-40 wrapper provides vertical spacing) -->
128
+ <!-- QGDS Table Component -->
132
129
  <div class="mt-24">
133
- {{> table table}}
130
+ {{> table table}}
134
131
  </div>
135
132
  {{/if}}
136
133
  </div>
137
134
 
138
- </div>
139
- <!-- End Main Content Section -->
135
+ </main>
136
+ <!-- End Main Content div -->
140
137
 
141
138
  </div>
142
- <!-- End Content Column -->
143
-
139
+ <!-- End Column (8) -->
140
+
141
+ </div>
142
+ <!-- End Row -->
144
143
 
145
- <!-- QGDS Content Footer Component -->
146
- <div class="mt-64">
144
+
145
+ <!-- Start QGDS Content Footer -->
146
+ <div class="mt-64">
147
147
  {{> contentFooter contentFooter}}
148
- </div>
148
+ </div>
149
+
150
+ </div>
149
151
 
150
- </main>
151
- <!-- Footer -->
152
+ <!-- Start QGDS Footer -->
152
153
  {{> footer footer}}
154
+ <!-- End QGDS Footer -->
155
+
153
156
  </body>
154
157
 
158
+
155
159
  </html>
@@ -1,13 +1,11 @@
1
- import Component from '../../../js/QGDSComponent.js'
1
+ import Component from "../../../js/QGDSComponent.js";
2
2
  import template from "./searchInput.hbs?raw";
3
3
 
4
4
  export class SearchInput {
5
-
6
5
  // Use the global Component class to create a new instance of the Textbox component.
7
- // A data object, containing the Handlebars placeholder replacement strings, should be provided as an argument.
6
+ // A data object, containing the Handlebars placeholder replacement strings, should be provided as an argument.
8
7
 
9
- constructor( data = {} ) {
8
+ constructor(data = {}) {
10
9
  return new Component(template, data);
11
10
  }
12
-
13
11
  }