@qld-gov-au/qgds-bootstrap5 1.1.41 → 2.0.1
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.
- package/.eslintrc.cjs +27 -27
- package/.vscode/settings.json +5 -5
- package/dist/assets/components/bs5/banner/banner.hbs +0 -7
- package/dist/assets/components/bs5/card/card.hbs +3 -17
- package/dist/assets/components/bs5/footer/customLinks.hbs +7 -0
- package/dist/assets/components/bs5/footer/feedbackForm.hbs +25 -0
- package/dist/assets/components/bs5/footer/followLinks.hbs +14 -0
- package/dist/assets/components/bs5/footer/footer.hbs +229 -346
- package/dist/assets/components/bs5/head/head.hbs +4 -4
- package/dist/assets/components/bs5/header/header.hbs +124 -878
- package/dist/assets/components/bs5/header/headerBrand.hbs +35 -0
- package/dist/{components/bs5/iconLink/iconLink.hbs → assets/components/bs5/link/link.hbs} +3 -3
- package/dist/assets/components/bs5/logo/logoCOALandscape.hbs +110 -55
- package/dist/assets/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
- package/dist/assets/components/bs5/navbar/navbar.hbs +3 -3
- package/dist/assets/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
- package/dist/assets/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
- package/dist/assets/components/bs5/pageLayout/templates/homePage.hbs +111 -0
- package/dist/assets/components/bs5/searchInput/searchInput.hbs +1 -1
- package/dist/assets/css/qld.bootstrap.css +1 -1
- package/dist/assets/css/qld.bootstrap.css.map +3 -3
- package/dist/assets/js/handlebars.helpers.bundle.js.map +2 -2
- package/dist/assets/js/handlebars.helpers.js +34 -34
- package/dist/assets/js/handlebars.init.min.js +830 -1798
- package/dist/assets/js/handlebars.init.min.js.map +4 -4
- package/dist/assets/js/handlebars.partials.js +12 -8
- package/dist/assets/js/qld.bootstrap.min.js +5 -5
- package/dist/assets/js/qld.bootstrap.min.js.map +4 -4
- package/dist/assets/node/handlebars.init.min.js +399 -121
- package/dist/assets/node/handlebars.init.min.js.map +3 -3
- package/dist/components/bs5/banner/banner.hbs +0 -7
- package/dist/components/bs5/card/card.hbs +3 -17
- package/dist/components/bs5/footer/customLinks.hbs +7 -0
- package/dist/components/bs5/footer/feedbackForm.hbs +25 -0
- package/dist/components/bs5/footer/followLinks.hbs +14 -0
- package/dist/components/bs5/footer/footer.hbs +229 -346
- package/dist/components/bs5/head/head.hbs +4 -4
- package/dist/components/bs5/header/header.hbs +124 -878
- package/dist/components/bs5/header/headerBrand.hbs +35 -0
- package/dist/{assets/components/bs5/iconLink/iconLink.hbs → components/bs5/link/link.hbs} +3 -3
- package/dist/components/bs5/logo/logoCOALandscape.hbs +110 -55
- package/dist/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
- package/dist/components/bs5/navbar/navbar.hbs +3 -3
- package/dist/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
- package/dist/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
- package/dist/components/bs5/pageLayout/templates/homePage.hbs +111 -0
- package/dist/components/bs5/searchInput/searchInput.hbs +1 -1
- package/dist/components/handlebars.helpers.js +34 -34
- package/dist/components/handlebars.partials.js +12 -8
- package/dist/package.json +1 -1
- package/dist/sample-data/footer/footer.data.json +128 -84
- package/dist/sample-data/header/header.variant.coBrand.data.json +28 -40
- package/dist/sample-data/header/header.variant.endorsed.data.json +116 -150
- package/dist/sample-data/header/header.variant.masterBrand.data.json +116 -152
- package/dist/sample-data/header/header.variant.standAlone.data.json +118 -150
- package/dist/sample-data/header/header.variant.subBrand.data.json +32 -159
- package/dist/sample-data/inpageAlert/inpageAlert.data.json +6 -6
- package/dist/sample-data/logo/logo.data.json +1 -0
- package/dist/sample-data/navbar/navbar.data.json +5 -5
- package/package.json +1 -1
- package/src/components/bs5/accordion/Accordion.mdx +8 -2
- package/src/components/bs5/banner/Banner.mdx +6 -1
- package/src/components/bs5/banner/banner.hbs +0 -7
- package/src/components/bs5/banner/banner.scss +16 -9
- package/src/components/bs5/banner/banner.stories.js +17 -17
- package/src/components/bs5/breadcrumbs/Breadcrumbs.mdx +8 -2
- package/src/components/bs5/button/button.stories.js +8 -8
- package/src/components/bs5/callToAction/callToAction.mdx +8 -3
- package/src/components/bs5/card/Card.mdx +8 -2
- package/src/components/bs5/card/card.hbs +3 -17
- package/src/components/bs5/card/card.scss +103 -103
- package/src/components/bs5/containerLayout/containerLayout.stories.js +1 -1
- package/src/components/bs5/footer/Footer.js +3 -3
- package/src/components/bs5/footer/Footer.mdx +8 -2
- package/src/components/bs5/footer/customLinks.hbs +7 -0
- package/src/components/bs5/footer/feedbackForm.hbs +25 -0
- package/src/components/bs5/footer/followLinks.hbs +14 -0
- package/src/components/bs5/footer/footer.data.json +128 -84
- package/src/components/bs5/footer/footer.functions.js +2 -1
- package/src/components/bs5/footer/footer.hbs +229 -346
- package/src/components/bs5/footer/footer.scss +262 -272
- package/src/components/bs5/footer/footer.stories.js +4 -92
- package/src/components/bs5/footer/footer_formio.scss +219 -0
- package/src/components/bs5/globalAlert/GlobalAlert.mdx +8 -2
- package/src/components/bs5/globalAlert/globalAlert.test.js +3 -11
- package/src/components/bs5/header/_header-variables.scss +272 -0
- package/src/components/bs5/header/header.functions.js +9 -9
- package/src/components/bs5/header/header.hbs +124 -878
- package/src/components/bs5/header/header.scss +279 -411
- package/src/components/bs5/header/header.stories.js +8 -28
- package/src/components/bs5/header/header.variant.coBrand.data.json +28 -40
- package/src/components/bs5/header/header.variant.endorsed.data.json +116 -150
- package/src/components/bs5/header/header.variant.masterBrand.data.json +116 -152
- package/src/components/bs5/header/header.variant.standAlone.data.json +118 -150
- package/src/components/bs5/header/header.variant.subBrand.data.json +32 -159
- package/src/components/bs5/header/headerBrand.hbs +35 -0
- package/src/components/bs5/inpageAlert/InpageAlert.mdx +8 -2
- package/src/components/bs5/inpageAlert/inpageAlert.data.json +6 -6
- package/src/components/bs5/{iconLink/iconLink.hbs → link/link.hbs} +3 -3
- package/src/components/bs5/{iconLink/iconLink.js → link/link.js} +2 -2
- package/src/components/bs5/{iconLink/iconLink.mdx → link/link.mdx} +3 -3
- package/src/components/bs5/{iconLink/iconLink.scss → link/link.scss} +27 -3
- package/src/components/bs5/{iconLink/iconLink.stories.js → link/link.stories.js} +4 -5
- package/src/components/bs5/linkColumns/linkColumns.mdx +8 -3
- package/src/components/bs5/logo/logo.data.json +1 -0
- package/src/components/bs5/logo/logoCOALandscape.hbs +110 -55
- package/src/components/bs5/logo/logoCOALandscape2Lines.hbs +2 -1
- package/src/components/bs5/navbar/navbar.data.json +5 -5
- package/src/components/bs5/navbar/navbar.hbs +3 -3
- package/src/components/bs5/navbar/navbar.scss +669 -614
- package/src/components/bs5/navbar/navbar.stories.js +1 -0
- package/src/components/bs5/pageLayout/{FullWidthLandingPage.js → HomePage.js} +2 -2
- package/src/components/bs5/pageLayout/pageLayout.stories.js +242 -98
- package/src/components/bs5/pageLayout/templates/contentPageWithForm.hbs +53 -22
- package/src/components/bs5/pageLayout/templates/contentPageWithSideNavigation.hbs +79 -59
- package/src/components/bs5/pageLayout/templates/homePage.hbs +111 -0
- package/src/components/bs5/promotionalPanel/PromotionalPanel.mdx +8 -3
- package/src/components/bs5/searchInput/__snapshots__/searchInput.test.js.snap +1 -1
- package/src/components/bs5/searchInput/searchInput.hbs +1 -1
- package/src/components/bs5/searchInput/searchInput.scss +2 -1
- package/src/components/bs5/searchInput/searchInput.test.js +1 -2
- package/src/css/main.scss +4 -1
- package/src/css/mixins/_index.scss +2 -1
- package/src/css/mixins/register-vars.scss +23 -0
- package/src/css/qld-variables.scss +4 -2
- package/src/css/utilities/_index.scss +1 -0
- package/src/css/utilities/responsive-visually-hidden.scss +10 -0
- package/src/js/handlebars.helpers.js +34 -34
- package/src/js/handlebars.partials.js +12 -8
- package/src/js/qld.bootstrap.js +10 -11
- package/dist/assets/components/bs5/footer/footerForgov.hbs +0 -279
- package/dist/assets/components/bs5/pageLayout/pageLayout.hbs +0 -34
- package/dist/assets/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
- package/dist/components/bs5/footer/footerForgov.hbs +0 -279
- package/dist/components/bs5/pageLayout/pageLayout.hbs +0 -34
- package/dist/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
- package/src/components/bs5/footer/_colours.scss +0 -149
- package/src/components/bs5/footer/_measurements.scss +0 -32
- package/src/components/bs5/footer/footerForgov.hbs +0 -279
- package/src/components/bs5/header/_colours.scss +0 -271
- package/src/components/bs5/header/_icons.scss +0 -10
- package/src/components/bs5/pageLayout/pageLayout.hbs +0 -34
- package/src/components/bs5/pageLayout/pageLayout.js +0 -21
- package/src/components/bs5/pageLayout/templates/fullWidthLandingPage.hbs +0 -61
- /package/dist/sample-data/{iconLink/iconLink.data.json → link/link.data.json} +0 -0
- /package/src/components/bs5/{iconLink/iconLink.data.json → link/link.data.json} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Component from "../../../js/QGDSComponent.js";
|
|
2
|
-
import template from "./templates/
|
|
2
|
+
import template from "./templates/homePage.hbs?raw";
|
|
3
3
|
|
|
4
|
-
export class
|
|
4
|
+
export class HomePage {
|
|
5
5
|
constructor(data = {}) {
|
|
6
6
|
return new Component(template, data);
|
|
7
7
|
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { FullWidthLandingPage } from "./FullWidthLandingPage.js";
|
|
1
|
+
import { HomePage } from "./HomePage.js";
|
|
3
2
|
import { ContentPageWithSideNavigation } from "./ContentPageWithSideNavigation.js";
|
|
4
3
|
import { ContentPageWithForm } from "./ContentPageWithForm.js";
|
|
5
4
|
//Data
|
|
@@ -9,11 +8,11 @@ import globalAlertData from "../globalAlert/globalAlert.data.json";
|
|
|
9
8
|
import tableData from "../table/table.data.json";
|
|
10
9
|
import footerData from "../footer/footer.data.json";
|
|
11
10
|
import contentFooterData from "../contentFooter/contentFooter.data.json";
|
|
11
|
+
import callToActionData from "../callToAction/callToAction.data.json";
|
|
12
12
|
import bannerData from "../banner/banner.data.json";
|
|
13
13
|
import cardData from "../card/card.data.json";
|
|
14
14
|
import linkColumnsData from "../linkColumns/linkColumns.data.json";
|
|
15
15
|
import promotionalPanelData from "../promotionalPanel/promotionalPanel.data.json";
|
|
16
|
-
import sidenavData from "../sidenav/sidenav.data.json";
|
|
17
16
|
import inpagenavData from "../inpagenav/inpagenav.data.json";
|
|
18
17
|
import breadcrumbsData from "../breadcrumbs/breadcrumbs.data.json";
|
|
19
18
|
import imageData from "../image/image.data.json";
|
|
@@ -23,10 +22,38 @@ import textareaData from "../textarea/textarea.data.json";
|
|
|
23
22
|
import searchData from "../searchInput/searchInput.data.json";
|
|
24
23
|
import selectData from "../select/select.data.json";
|
|
25
24
|
import buttonData from "../button/button.data.json";
|
|
26
|
-
import
|
|
27
|
-
import
|
|
25
|
+
import buttondata from "../button/button.data.json";
|
|
26
|
+
import accordionData from "../accordion/accordion.data.json";
|
|
27
|
+
|
|
28
28
|
import { SearchInput } from "../searchInput/SearchInput.js";
|
|
29
29
|
|
|
30
|
+
const sideNavData = {
|
|
31
|
+
navtitle: "Template",
|
|
32
|
+
navtitlelink: "#optionallink",
|
|
33
|
+
navlist: [
|
|
34
|
+
{
|
|
35
|
+
link: "#https://www.qld.gov.au/transport/registration/register/heavy",
|
|
36
|
+
label: "Home page",
|
|
37
|
+
class: "",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
link: "#",
|
|
41
|
+
label: "Content page (no bar)",
|
|
42
|
+
class: "",
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
link: "#",
|
|
46
|
+
label: "Content page (basic bar)",
|
|
47
|
+
class: "",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
link: "#",
|
|
51
|
+
label: "Single page form",
|
|
52
|
+
class: "",
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
};
|
|
56
|
+
|
|
30
57
|
const defaultData = {
|
|
31
58
|
cdn: ".", //for storybook it's ., for normal usage "PROD"
|
|
32
59
|
title: "title goes here",
|
|
@@ -37,15 +64,18 @@ const defaultData = {
|
|
|
37
64
|
navbar: menu_state,
|
|
38
65
|
table: tableData,
|
|
39
66
|
globalAlert: globalAlertData.critical,
|
|
40
|
-
footer:
|
|
67
|
+
footer: {
|
|
68
|
+
...footerData,
|
|
69
|
+
variantClass: "dark",
|
|
70
|
+
},
|
|
41
71
|
contentFooter: contentFooterData,
|
|
42
|
-
sidenav:
|
|
72
|
+
sidenav: sideNavData,
|
|
43
73
|
};
|
|
44
74
|
|
|
45
75
|
export default {
|
|
46
|
-
title: "
|
|
76
|
+
title: "5. Templates/Page Layout",
|
|
47
77
|
render: (args) => {
|
|
48
|
-
return new
|
|
78
|
+
return new ContentPageWithSideNavigation(args).html;
|
|
49
79
|
},
|
|
50
80
|
args: defaultData,
|
|
51
81
|
argTypes: {},
|
|
@@ -57,22 +87,46 @@ export default {
|
|
|
57
87
|
},
|
|
58
88
|
};
|
|
59
89
|
|
|
90
|
+
const SideNavArgs = {
|
|
91
|
+
...defaultData,
|
|
92
|
+
title: "Content Page with Side Navigation",
|
|
93
|
+
accordionItems: accordionData,
|
|
94
|
+
calloutdata: {
|
|
95
|
+
title: "Call out heading",
|
|
96
|
+
content:
|
|
97
|
+
"Faucibus urna non suspendisse augue donec fermentum. Semper elementum dui odio sociis. Quis risus pellentesque consectetur risus senectus. Egestas lectus nec dui odio vitae sem. Convallis pulvinar arcu feugiat eget. Est convallis mattis mauris nisi suscipit.",
|
|
98
|
+
},
|
|
99
|
+
inpagenav: inpagenavData,
|
|
100
|
+
image: imageData,
|
|
101
|
+
video: videoData.youtube,
|
|
102
|
+
callToAction: {
|
|
103
|
+
...callToActionData,
|
|
104
|
+
label: "Call to action",
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
|
|
60
108
|
/**
|
|
61
|
-
* Default
|
|
109
|
+
* Default Content Page with Side Navigation
|
|
62
110
|
*/
|
|
63
111
|
export const Default = {
|
|
64
112
|
args: {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
113
|
+
...SideNavArgs,
|
|
114
|
+
banner: {
|
|
115
|
+
variantClass: "dark",
|
|
116
|
+
bannerType: "no-banner",
|
|
117
|
+
breadcrumbs: breadcrumbsData.default,
|
|
118
|
+
},
|
|
119
|
+
sidenav: {
|
|
120
|
+
...sideNavData,
|
|
121
|
+
navlist: [
|
|
122
|
+
sideNavData.navlist[0],
|
|
123
|
+
{
|
|
124
|
+
...sideNavData.navlist[1],
|
|
125
|
+
class: "active",
|
|
126
|
+
},
|
|
127
|
+
sideNavData.navlist[2],
|
|
128
|
+
sideNavData.navlist[3],
|
|
129
|
+
],
|
|
76
130
|
},
|
|
77
131
|
},
|
|
78
132
|
};
|
|
@@ -80,9 +134,9 @@ export const Default = {
|
|
|
80
134
|
/**
|
|
81
135
|
* Full Width Landing Page
|
|
82
136
|
*/
|
|
83
|
-
export const
|
|
137
|
+
export const Home = {
|
|
84
138
|
render: (args) => {
|
|
85
|
-
return new
|
|
139
|
+
return new HomePage(args).html;
|
|
86
140
|
},
|
|
87
141
|
args: {
|
|
88
142
|
...defaultData,
|
|
@@ -91,6 +145,21 @@ export const FullWidthLanding = {
|
|
|
91
145
|
...bannerData,
|
|
92
146
|
title: "Welcome to Queensland Government",
|
|
93
147
|
abstract: "Your gateway to government services and information.",
|
|
148
|
+
bannerType: "banner-advanced",
|
|
149
|
+
backgroundType: "with-hero-image",
|
|
150
|
+
"image.classes": "align-grid",
|
|
151
|
+
callToAction: "buttons",
|
|
152
|
+
buttons: [
|
|
153
|
+
{
|
|
154
|
+
...buttondata,
|
|
155
|
+
iconClass: false,
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
...buttondata,
|
|
159
|
+
classes: ["btn-secondary"],
|
|
160
|
+
variantClass: "btn-secondary",
|
|
161
|
+
},
|
|
162
|
+
],
|
|
94
163
|
},
|
|
95
164
|
cardGrid: {
|
|
96
165
|
cards: [
|
|
@@ -99,36 +168,73 @@ export const FullWidthLanding = {
|
|
|
99
168
|
title: "Services",
|
|
100
169
|
description: "Access government services online",
|
|
101
170
|
link: "#services",
|
|
171
|
+
iconClasses: "qld-icon-design",
|
|
172
|
+
iconPosition: "icon-top",
|
|
102
173
|
},
|
|
103
174
|
{
|
|
104
175
|
...cardData.singleAction,
|
|
105
176
|
title: "Information",
|
|
106
177
|
description: "Find important information and resources",
|
|
107
178
|
link: "#information",
|
|
179
|
+
iconClasses: "qld-icon-design",
|
|
180
|
+
iconPosition: "icon-top",
|
|
108
181
|
},
|
|
109
182
|
{
|
|
110
183
|
...cardData.singleAction,
|
|
111
184
|
title: "Support",
|
|
112
185
|
description: "Get help when you need it",
|
|
113
186
|
link: "#support",
|
|
187
|
+
iconClasses: "qld-icon-design",
|
|
188
|
+
iconPosition: "icon-top",
|
|
189
|
+
},
|
|
190
|
+
],
|
|
191
|
+
},
|
|
192
|
+
cardGridBottom: {
|
|
193
|
+
cards: [
|
|
194
|
+
{
|
|
195
|
+
...cardData.singleAction,
|
|
196
|
+
title: "Services",
|
|
197
|
+
description: "Access government services online",
|
|
198
|
+
link: "#services",
|
|
199
|
+
image: "./assets/img/image-placeholder.png",
|
|
200
|
+
imageAlt: "A grey placeholder image with an icon in the centre.",
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
...cardData.singleAction,
|
|
204
|
+
title: "Information",
|
|
205
|
+
description: "Find important information and resources",
|
|
206
|
+
link: "#information",
|
|
207
|
+
image: "./assets/img/image-placeholder.png",
|
|
208
|
+
imageAlt: "A grey placeholder image with an icon in the centre.",
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
...cardData.singleAction,
|
|
212
|
+
title: "Support",
|
|
213
|
+
description: "Get help when you need it",
|
|
214
|
+
link: "#support",
|
|
215
|
+
image: "./assets/img/image-placeholder.png",
|
|
216
|
+
imageAlt: "A grey placeholder image with an icon in the centre.",
|
|
114
217
|
},
|
|
115
218
|
],
|
|
116
219
|
},
|
|
117
220
|
linkColumns: linkColumnsData,
|
|
118
|
-
|
|
221
|
+
callToAction: callToActionData,
|
|
222
|
+
promotionalPanel: {
|
|
223
|
+
...promotionalPanelData,
|
|
224
|
+
variantClass: "dark",
|
|
225
|
+
},
|
|
119
226
|
},
|
|
120
227
|
};
|
|
121
228
|
|
|
122
229
|
/**
|
|
123
230
|
* Content Page with Side Navigation
|
|
124
231
|
*/
|
|
125
|
-
export const
|
|
232
|
+
export const ContentPageBasicBanner = {
|
|
126
233
|
render: (args) => {
|
|
127
234
|
return new ContentPageWithSideNavigation(args).html;
|
|
128
235
|
},
|
|
129
236
|
args: {
|
|
130
|
-
...
|
|
131
|
-
title: "Content Page with Side Navigation",
|
|
237
|
+
...SideNavArgs,
|
|
132
238
|
banner: {
|
|
133
239
|
...bannerData,
|
|
134
240
|
title: "Vehicle Registration",
|
|
@@ -136,131 +242,169 @@ export const ContentPageWithSideNav = {
|
|
|
136
242
|
"Everything you need to know about registering your vehicle in Queensland.",
|
|
137
243
|
breadcrumbs: breadcrumbsData.default,
|
|
138
244
|
},
|
|
139
|
-
sidenav:
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
245
|
+
sidenav: {
|
|
246
|
+
...sideNavData,
|
|
247
|
+
navlist: [
|
|
248
|
+
sideNavData.navlist[0],
|
|
249
|
+
sideNavData.navlist[1],
|
|
250
|
+
{
|
|
251
|
+
...sideNavData.navlist[2],
|
|
252
|
+
class: "active",
|
|
253
|
+
},
|
|
254
|
+
sideNavData.navlist[3],
|
|
255
|
+
],
|
|
256
|
+
},
|
|
143
257
|
},
|
|
144
258
|
};
|
|
145
259
|
|
|
146
260
|
/**
|
|
147
261
|
* Content Page with Form
|
|
148
262
|
*/
|
|
149
|
-
export const
|
|
263
|
+
export const ContentPageWithSingleForm = {
|
|
150
264
|
render: (args) => {
|
|
151
265
|
return new ContentPageWithForm(args).html;
|
|
152
266
|
},
|
|
153
267
|
args: {
|
|
154
268
|
...defaultData,
|
|
155
269
|
title: "Contact Us Form",
|
|
270
|
+
inpageAlert: {
|
|
271
|
+
variantClass: "alert-info",
|
|
272
|
+
alertType: "",
|
|
273
|
+
content:
|
|
274
|
+
"<p>Response times are estimated at 15 working days. If you're looking for a quicker response, call 13 QGOV ( <a href='#'>13 74 68</a>).</p>",
|
|
275
|
+
},
|
|
156
276
|
banner: {
|
|
157
277
|
...bannerData,
|
|
158
278
|
title: "Contact Us",
|
|
159
279
|
abstract: "Get in touch with us using the form below.",
|
|
160
280
|
breadcrumbs: breadcrumbsData.default,
|
|
161
281
|
},
|
|
282
|
+
sidenav: {
|
|
283
|
+
...sideNavData,
|
|
284
|
+
navlist: [
|
|
285
|
+
sideNavData.navlist[0],
|
|
286
|
+
sideNavData.navlist[1],
|
|
287
|
+
sideNavData.navlist[2],
|
|
288
|
+
{
|
|
289
|
+
...sideNavData.navlist[3],
|
|
290
|
+
class: "active",
|
|
291
|
+
},
|
|
292
|
+
],
|
|
293
|
+
},
|
|
162
294
|
content: `
|
|
163
295
|
<h1>Contact Form</h1>
|
|
164
296
|
<p>Please fill out the form below and we'll get back to you as soon as possible.</p>
|
|
165
297
|
`,
|
|
166
298
|
form: {
|
|
167
|
-
|
|
299
|
+
fields1: [
|
|
300
|
+
{
|
|
301
|
+
type: "radio",
|
|
302
|
+
questionLabel: "Type of enquiry",
|
|
303
|
+
listClasses: "field-required",
|
|
304
|
+
listitems: [
|
|
305
|
+
{
|
|
306
|
+
type: "radio",
|
|
307
|
+
id: "type1",
|
|
308
|
+
name: "enquiry",
|
|
309
|
+
label: "Complaint",
|
|
310
|
+
value: "complaint",
|
|
311
|
+
isDisabled: false,
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
type: "radio",
|
|
315
|
+
id: "type2",
|
|
316
|
+
name: "enquiry",
|
|
317
|
+
label: "Compliment",
|
|
318
|
+
value: "compliment",
|
|
319
|
+
isDisabled: false,
|
|
320
|
+
},
|
|
321
|
+
],
|
|
322
|
+
},
|
|
168
323
|
{
|
|
169
324
|
...textboxData,
|
|
170
325
|
type: "textbox",
|
|
171
|
-
label:
|
|
326
|
+
"label-text":
|
|
327
|
+
"Please tell us in a few words what your enquiry relates to",
|
|
328
|
+
label: "Please tell us in a few words what your enquiry relates to",
|
|
329
|
+
"optional-text": "",
|
|
330
|
+
placeholder: "",
|
|
331
|
+
"hint-text":
|
|
332
|
+
"This will help us determine the most appropriate person to respond",
|
|
172
333
|
id: "firstName",
|
|
173
334
|
required: true,
|
|
174
335
|
},
|
|
336
|
+
{
|
|
337
|
+
...textareaData,
|
|
338
|
+
type: "textarea",
|
|
339
|
+
"label-text": "Tell us what happened",
|
|
340
|
+
label: "Tell us what happened",
|
|
341
|
+
"optional-text": "",
|
|
342
|
+
"hint-text":
|
|
343
|
+
"Provide as much information as possible to help us better respond to your feedback. There is no character limit. Please don't include private information like credit card details or medical history.",
|
|
344
|
+
rows: 4,
|
|
345
|
+
cols: 50,
|
|
346
|
+
maxlength: 500,
|
|
347
|
+
minlength: 10,
|
|
348
|
+
resize: true,
|
|
349
|
+
id: "message",
|
|
350
|
+
required: true,
|
|
351
|
+
},
|
|
352
|
+
],
|
|
353
|
+
fields2: [
|
|
175
354
|
{
|
|
176
355
|
...textboxData,
|
|
177
356
|
type: "textbox",
|
|
178
|
-
label: "
|
|
357
|
+
"label-text": "Name",
|
|
358
|
+
"optional-text": "",
|
|
359
|
+
placeholder: "",
|
|
360
|
+
"hint-text": "",
|
|
179
361
|
id: "lastName",
|
|
180
362
|
required: true,
|
|
181
363
|
},
|
|
182
364
|
{
|
|
183
365
|
...textboxData,
|
|
184
366
|
type: "textbox",
|
|
185
|
-
label: "Email",
|
|
367
|
+
"label-text": "Email",
|
|
368
|
+
"optional-text": "",
|
|
369
|
+
placeholder: "",
|
|
370
|
+
"hint-text": "",
|
|
186
371
|
id: "email",
|
|
187
372
|
inputType: "email",
|
|
188
373
|
required: true,
|
|
189
374
|
},
|
|
375
|
+
{
|
|
376
|
+
...textboxData,
|
|
377
|
+
type: "textbox",
|
|
378
|
+
"label-text": "Phone",
|
|
379
|
+
"optional-text": "",
|
|
380
|
+
placeholder: "",
|
|
381
|
+
"hint-text": "",
|
|
382
|
+
id: "phone",
|
|
383
|
+
inputType: "phone",
|
|
384
|
+
required: true,
|
|
385
|
+
},
|
|
190
386
|
{
|
|
191
387
|
...selectData,
|
|
192
388
|
type: "select",
|
|
193
|
-
label: "Enquiry Type",
|
|
389
|
+
"label-text": "Enquiry Type",
|
|
390
|
+
"optional-text": "",
|
|
391
|
+
"hint-text": "",
|
|
194
392
|
id: "enquiryType",
|
|
195
393
|
},
|
|
196
394
|
{
|
|
197
|
-
...textareaData,
|
|
198
|
-
type: "textarea",
|
|
199
|
-
label: "Message",
|
|
200
|
-
id: "message",
|
|
201
|
-
required: true,
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
...checkboxData,
|
|
205
395
|
type: "checkbox",
|
|
206
|
-
questionLabel: "
|
|
396
|
+
questionLabel: "Privacy acknowledgement",
|
|
397
|
+
listClasses: "field-required",
|
|
207
398
|
listitems: [
|
|
208
399
|
{
|
|
209
400
|
type: "checkbox",
|
|
210
401
|
id: "service1",
|
|
211
|
-
name: "
|
|
212
|
-
label: "
|
|
213
|
-
value: "
|
|
214
|
-
isDisabled: false
|
|
215
|
-
},
|
|
216
|
-
{
|
|
217
|
-
type: "checkbox",
|
|
218
|
-
id: "service2",
|
|
219
|
-
name: "services",
|
|
220
|
-
label: "Mobile App Development",
|
|
221
|
-
value: "mobile",
|
|
222
|
-
isDisabled: false
|
|
402
|
+
name: "Privacy acknowledgement",
|
|
403
|
+
label: "I have read and understood the privacy statement",
|
|
404
|
+
value: "checked",
|
|
405
|
+
isDisabled: false,
|
|
223
406
|
},
|
|
224
|
-
|
|
225
|
-
type: "checkbox",
|
|
226
|
-
id: "service3",
|
|
227
|
-
name: "services",
|
|
228
|
-
label: "Consulting",
|
|
229
|
-
value: "consulting",
|
|
230
|
-
isDisabled: false
|
|
231
|
-
}
|
|
232
|
-
]
|
|
233
|
-
},
|
|
234
|
-
{
|
|
235
|
-
...radioData,
|
|
236
|
-
type: "radio",
|
|
237
|
-
questionLabel: "Preferred Contact Method",
|
|
238
|
-
listitems: [
|
|
239
|
-
{
|
|
240
|
-
type: "radio",
|
|
241
|
-
id: "contact1",
|
|
242
|
-
name: "contactMethod",
|
|
243
|
-
label: "Email",
|
|
244
|
-
value: "email",
|
|
245
|
-
isDisabled: false
|
|
246
|
-
},
|
|
247
|
-
{
|
|
248
|
-
type: "radio",
|
|
249
|
-
id: "contact2",
|
|
250
|
-
name: "contactMethod",
|
|
251
|
-
label: "Phone",
|
|
252
|
-
value: "phone",
|
|
253
|
-
isDisabled: false
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
type: "radio",
|
|
257
|
-
id: "contact3",
|
|
258
|
-
name: "contactMethod",
|
|
259
|
-
label: "SMS",
|
|
260
|
-
value: "sms",
|
|
261
|
-
isDisabled: false
|
|
262
|
-
}
|
|
263
|
-
]
|
|
407
|
+
],
|
|
264
408
|
},
|
|
265
409
|
],
|
|
266
410
|
buttons: [
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
<meta charset="UTF-8">
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
7
7
|
<title>{{title}}</title>
|
|
8
|
-
{{> head }}
|
|
9
8
|
</head>
|
|
10
9
|
|
|
11
10
|
<body>
|
|
@@ -18,44 +17,76 @@
|
|
|
18
17
|
{{/if}}
|
|
19
18
|
|
|
20
19
|
<main>
|
|
21
|
-
<div class="container-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
<div class="
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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>
|
|
26
|
+
</div>
|
|
27
|
+
{{/if}}
|
|
28
|
+
|
|
29
|
+
<div class="row">
|
|
30
|
+
{{#if sidenav}}
|
|
31
|
+
<!-- Side navigation Col -->
|
|
32
|
+
<div class="col-12 col-lg-3 mt-5 mt-lg-0">
|
|
33
|
+
{{> sidenav sidenav}}
|
|
28
34
|
</div>
|
|
29
35
|
{{/if}}
|
|
30
36
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
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>
|
|
35
60
|
</div>
|
|
36
61
|
|
|
37
62
|
{{#if form}}
|
|
38
63
|
<form class="qld-form mb-5">
|
|
39
|
-
{{#each form.
|
|
40
|
-
<div class="form-group mb-
|
|
64
|
+
{{#each form.fields1}}
|
|
65
|
+
<div class="form-group mb-32">
|
|
41
66
|
{{#ifCond type '==' 'textbox'}}
|
|
42
67
|
{{> textbox this}}
|
|
43
68
|
{{else ifCond type '==' 'textarea'}}
|
|
44
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}}
|
|
45
82
|
{{else ifCond type '==' 'select'}}
|
|
46
83
|
{{> select this}}
|
|
47
|
-
{{else ifCond type '==' 'dateinput'}}
|
|
48
|
-
{{> dateinput this}}
|
|
49
|
-
{{else ifCond type '==' 'formcheck'}}
|
|
50
|
-
{{> formcheck this}}
|
|
51
84
|
{{else ifCond type '==' 'checkbox'}}
|
|
52
85
|
{{> formcheck this}}
|
|
53
|
-
{{else ifCond type '==' 'radio'}}
|
|
54
|
-
{{> formcheck this}}
|
|
55
86
|
{{/ifCond}}
|
|
56
87
|
</div>
|
|
57
88
|
{{/each}}
|
|
58
|
-
|
|
89
|
+
|
|
59
90
|
{{#if form.buttons}}
|
|
60
91
|
<div class="form-actions d-flex mt-5 gap-4">
|
|
61
92
|
{{#each form.buttons}}
|
|
@@ -66,9 +97,9 @@
|
|
|
66
97
|
</form>
|
|
67
98
|
{{/if}}
|
|
68
99
|
|
|
69
|
-
{{> contentFooter contentFooter}}
|
|
70
100
|
</div>
|
|
71
101
|
</div>
|
|
102
|
+
{{> contentFooter contentFooter}}
|
|
72
103
|
</div>
|
|
73
104
|
</div>
|
|
74
105
|
</main>
|