@worksafevictoria/wcl7.5 1.8.0 → 1.9.0-beta.10
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/.storybook/preview.js +1 -1
- package/lib/utility.js +0 -2
- package/package.json +1 -1
- package/src/components/Common/CardGrid/index.vue +0 -3
- package/src/components/Common/CardGridItem/card-grid-item-caret.vue +39 -45
- package/src/components/Common/CardGridItem/card-grid-item-icon.vue +29 -32
- package/src/components/Common/CardGridItem/index.vue +6 -5
- package/src/components/Containers/Carousel/index.stories.js +6 -4
- package/src/components/Containers/Carousel/index.vue +131 -120
- package/src/components/Containers/HomepageHeader/index.stories.js +1 -1
- package/src/components/Containers/HomepageHeaderNew/index.stories.js +3 -15
- package/src/components/Containers/HomepageHeaderNew/index.vue +0 -5
- package/src/components/Global/AppFooter/index.vue +130 -133
- package/src/components/Global/AppHeader/ModalSearch/index.vue +7 -1
- package/src/components/Global/AppHeader/index.stories.js +2 -2
- package/src/components/Global/AppHeaderNew/ModalSearch/index.vue +21 -17
- package/src/components/Global/AppHeaderNew/index.stories.js +2 -2
- package/src/components/Global/AppHeaderNew/index.vue +53 -24
- package/src/components/Global/AppHeaderNew/styles.scss +1 -4
- package/src/components/Global/BackToTop/index.vue +16 -16
- package/src/components/Global/ContrastMode/index.stories.js +1 -1
- package/src/components/Global/HeroHeader/index.vue +62 -73
- package/src/components/Global/SocialShare/index.vue +62 -66
- package/src/components/Global/Strip/index.vue +82 -70
- package/src/components/Paragraphs/Accordion/AccordionItem/index.vue +21 -23
- package/src/components/Paragraphs/Accordion/StepperItem/index.vue +15 -15
- package/src/components/Paragraphs/Calculator/CardContainer/index.vue +74 -75
- package/src/components/Paragraphs/Calculator/RiskLevel/index.vue +31 -39
- package/src/components/Paragraphs/Directory/Asbestos/Records/SingleRecord/index.stories.js +1 -1
- package/src/components/Paragraphs/Directory/Asbestos/Records/SingleRecord/index.vue +105 -108
- package/src/components/Paragraphs/Directory/Asbestos/Records/index.vue +152 -117
- package/src/components/Paragraphs/Directory/HSCP/Records/SingleRecord/index.vue +127 -133
- package/src/components/Paragraphs/Directory/HSCP/Records/index.vue +157 -124
- package/src/components/Paragraphs/ScrollSpy/index.stories.js +23 -25
- package/src/components/Paragraphs/ScrollSpy/index.vue +33 -40
- package/src/components/Paragraphs/TabulatedData/index.vue +3 -2
- package/src/components/SubComponents/CtaButton/index.vue +47 -44
- package/src/components/SubComponents/Icon/README.md +2 -2
- package/src/components/SubComponents/Icon/example.js +1 -0
- package/src/components/SubComponents/Icon/index.stories.js +1 -1
- package/src/components/SubComponents/Icon/index.vue +47 -47
- package/src/components/SubComponents/ResourceGroup/cardbody.vue +49 -61
- package/src/components/SubComponents/ResourceGroup/index.vue +2 -1
- package/src/components/SubComponents/Search/SearchListing/index.vue +0 -2
- package/src/components/SubComponents/Search/index.vue +4 -2
- package/src/components/SubComponents/VideoThumbnail/index.vue +29 -28
- package/src/index.js +1 -1
- package/src/mock/asbestos-removalists.js +1 -1
- package/src/mock/carousel-items.js +46 -81
- package/src/mock/course-provider.js +2 -2
|
@@ -36,13 +36,11 @@
|
|
|
36
36
|
<label for="frNo" class="option">No</label>
|
|
37
37
|
</div>
|
|
38
38
|
<div v-if="submitted">
|
|
39
|
-
<img class="feedback-tick" alt="" :src="Tick" />Thank you for
|
|
40
|
-
feedback
|
|
39
|
+
<img class="feedback-tick" alt="feedback tick" :src="Tick" />Thank you for
|
|
40
|
+
your feedback
|
|
41
41
|
</div>
|
|
42
42
|
</column>
|
|
43
|
-
<column
|
|
44
|
-
class="app-footer__page-info__reviewed-date fullscreen"
|
|
45
|
-
:xs="6"
|
|
43
|
+
<column class="app-footer__page-info__reviewed-date fullscreen" :xs="6"
|
|
46
44
|
>Reviewed on {{ updateDate }}</column
|
|
47
45
|
>
|
|
48
46
|
</row>
|
|
@@ -61,9 +59,8 @@
|
|
|
61
59
|
<strong>Tell us more (optional)</strong>
|
|
62
60
|
</div>
|
|
63
61
|
<div>
|
|
64
|
-
We are unable to respond to questions via this form. If you
|
|
65
|
-
|
|
66
|
-
one of the
|
|
62
|
+
We are unable to respond to questions via this form. If you have a
|
|
63
|
+
question and would like to receive a reply, please use one of the
|
|
67
64
|
<a
|
|
68
65
|
class="feedback-link"
|
|
69
66
|
href="https://www.worksafe.vic.gov.au/contact-worksafe"
|
|
@@ -99,10 +96,7 @@
|
|
|
99
96
|
</row>
|
|
100
97
|
</container>
|
|
101
98
|
</div>
|
|
102
|
-
<div
|
|
103
|
-
class="app-footer__main"
|
|
104
|
-
:class="{ 'app-footer__main--workwell': isWorkwell }"
|
|
105
|
-
>
|
|
99
|
+
<div class="app-footer__main" :class="{ 'app-footer__main--workwell': isWorkwell }">
|
|
106
100
|
<container>
|
|
107
101
|
<row valign="center" class="app-footer__main__social-share">
|
|
108
102
|
<column :xs="12" :sm="2"
|
|
@@ -111,9 +105,7 @@
|
|
|
111
105
|
:width="isWorkwell ? 99 : 101"
|
|
112
106
|
:src="isWorkwell ? WorkWellLogo : WorkSafeLogo"
|
|
113
107
|
:alt="
|
|
114
|
-
!isWorkwell
|
|
115
|
-
? 'Work Safe Victoria - Logo'
|
|
116
|
-
: 'Work Well Victoria - Logo'
|
|
108
|
+
!isWorkwell ? 'Work Safe Victoria - Logo' : 'Work Well Victoria - Logo'
|
|
117
109
|
"
|
|
118
110
|
/></column>
|
|
119
111
|
<column :xs="12" :sm="10">
|
|
@@ -140,7 +132,7 @@
|
|
|
140
132
|
height="12"
|
|
141
133
|
width="17"
|
|
142
134
|
class="app-footer-menu__title__caret"
|
|
143
|
-
alt=""
|
|
135
|
+
alt="expand icon"
|
|
144
136
|
/>
|
|
145
137
|
<img
|
|
146
138
|
v-show="menuItem.isOpen"
|
|
@@ -148,25 +140,33 @@
|
|
|
148
140
|
height="12"
|
|
149
141
|
width="17"
|
|
150
142
|
class="app-footer-menu__title__caret"
|
|
151
|
-
alt=""
|
|
143
|
+
alt="collapse icon"
|
|
152
144
|
/>
|
|
153
145
|
|
|
154
146
|
<a
|
|
155
147
|
v-if="menuItem.absolute === menuItem.relative"
|
|
156
|
-
:role="!menuItem.absolute ? 'button' :
|
|
157
|
-
:href="menuItem.absolute"
|
|
158
|
-
class="
|
|
159
|
-
|
|
148
|
+
:role="!menuItem.absolute ? 'button' : null"
|
|
149
|
+
:href="menuItem.absolute || undefined"
|
|
150
|
+
:class="[
|
|
151
|
+
'app-footer-menu__title--link',
|
|
152
|
+
'dark',
|
|
153
|
+
{ nolink: !menuItem.absolute },
|
|
154
|
+
]"
|
|
155
|
+
:tabindex="!menuItem.absolute ? 0 : undefined"
|
|
160
156
|
target="_blank"
|
|
161
157
|
:aria-expanded="
|
|
162
|
-
isMobile
|
|
158
|
+
isMobile && !menuItem.absolute
|
|
159
|
+
? menuItem.isOpen
|
|
160
|
+
? 'true'
|
|
161
|
+
: 'false'
|
|
162
|
+
: undefined
|
|
163
163
|
"
|
|
164
164
|
@click.prevent="handleAbsoluteClick(menuItem)"
|
|
165
165
|
><h2>{{ menuItem.title }}</h2>
|
|
166
166
|
</a>
|
|
167
167
|
<nuxt-link
|
|
168
168
|
v-else
|
|
169
|
-
:to="menuItem.
|
|
169
|
+
:to="menuItem.title"
|
|
170
170
|
class="app-footer-menu__title--link dark"
|
|
171
171
|
>
|
|
172
172
|
<h2>{{ menuItem.title }}</h2>
|
|
@@ -189,14 +189,14 @@
|
|
|
189
189
|
:href="subItem.absolute"
|
|
190
190
|
target="_blank"
|
|
191
191
|
class="app-footer-menu__item--link dark"
|
|
192
|
-
@click
|
|
192
|
+
@click="handleAbsoluteClick(subItem)"
|
|
193
193
|
>{{ subItem.title
|
|
194
194
|
}}<img
|
|
195
195
|
:src="ExternalLink"
|
|
196
196
|
height="12"
|
|
197
197
|
width="12"
|
|
198
198
|
class="app-footer-menu__item--icon"
|
|
199
|
-
alt="
|
|
199
|
+
alt="External link"
|
|
200
200
|
/>
|
|
201
201
|
</a>
|
|
202
202
|
<nuxt-link
|
|
@@ -220,10 +220,11 @@
|
|
|
220
220
|
>
|
|
221
221
|
<a
|
|
222
222
|
:aria-expanded="
|
|
223
|
-
isMobile ? (contactMenuIsOpen ? 'true' : 'false') :
|
|
223
|
+
isMobile ? (contactMenuIsOpen ? 'true' : 'false') : undefined
|
|
224
224
|
"
|
|
225
225
|
role="button"
|
|
226
226
|
class="app-footer-menu__title--link dark nolink"
|
|
227
|
+
tabindex="0"
|
|
227
228
|
><h2>Contact</h2></a
|
|
228
229
|
>
|
|
229
230
|
<img
|
|
@@ -232,7 +233,7 @@
|
|
|
232
233
|
height="12"
|
|
233
234
|
width="17"
|
|
234
235
|
class="app-footer-menu__title__caret"
|
|
235
|
-
alt=""
|
|
236
|
+
alt="expand icon"
|
|
236
237
|
/>
|
|
237
238
|
<img
|
|
238
239
|
v-show="contactMenuIsOpen"
|
|
@@ -240,12 +241,9 @@
|
|
|
240
241
|
height="12"
|
|
241
242
|
width="17"
|
|
242
243
|
class="app-footer-menu__title__caret"
|
|
243
|
-
alt=""
|
|
244
|
+
alt="collapse icon"
|
|
244
245
|
/>
|
|
245
|
-
<ul
|
|
246
|
-
class="submenu"
|
|
247
|
-
:class="contactMenuIsOpen ? 'isOpen' : false"
|
|
248
|
-
>
|
|
246
|
+
<ul class="submenu" :class="contactMenuIsOpen ? 'isOpen' : false">
|
|
249
247
|
<li
|
|
250
248
|
class="app-footer-menu__item app-footer-menu__address app-footer-menu__item--link"
|
|
251
249
|
:class="{
|
|
@@ -305,14 +303,13 @@
|
|
|
305
303
|
alt="Pride Flag"
|
|
306
304
|
/>
|
|
307
305
|
<p>
|
|
308
|
-
WorkSafe Victoria acknowledges Aboriginal and Torres Strait
|
|
309
|
-
|
|
310
|
-
|
|
306
|
+
WorkSafe Victoria acknowledges Aboriginal and Torres Strait Islander people
|
|
307
|
+
as the Traditional Custodians of the land and acknowledges and pays respect
|
|
308
|
+
to their Elders, past and present.
|
|
311
309
|
</p>
|
|
312
310
|
<p>
|
|
313
|
-
WorkSafe Victoria is committed to safe and inclusive work places,
|
|
314
|
-
|
|
315
|
-
families.
|
|
311
|
+
WorkSafe Victoria is committed to safe and inclusive work places, policies
|
|
312
|
+
and services for people of LGBTIQ communities and their families.
|
|
316
313
|
</p>
|
|
317
314
|
</column>
|
|
318
315
|
<column :md="1" class="app-footer__main__empty-col" />
|
|
@@ -348,6 +345,7 @@
|
|
|
348
345
|
height="24"
|
|
349
346
|
class="app-footer__main__subscribe--icon"
|
|
350
347
|
:glyph="ExternalLinkRaw"
|
|
348
|
+
icon-alt="External link icon"
|
|
351
349
|
/>
|
|
352
350
|
</button>
|
|
353
351
|
</column>
|
|
@@ -358,27 +356,27 @@
|
|
|
358
356
|
</template>
|
|
359
357
|
|
|
360
358
|
<script>
|
|
361
|
-
import Row from
|
|
362
|
-
import Container from
|
|
363
|
-
import Column from
|
|
364
|
-
import FooterSocialShare from
|
|
365
|
-
import CaretUp from
|
|
366
|
-
import CaretDown from
|
|
367
|
-
import WorkSafeLogo from
|
|
368
|
-
import VicGovLogo from
|
|
369
|
-
import ExternalLink from
|
|
370
|
-
import ExternalLinkRaw from
|
|
371
|
-
import AboriginalFlag from
|
|
372
|
-
import PrideFlag from
|
|
373
|
-
import TorresStraitFlag from
|
|
374
|
-
import WorkWellLogo from
|
|
375
|
-
import { format } from
|
|
376
|
-
import Icon from
|
|
377
|
-
import CtaButton from
|
|
378
|
-
import Tick from
|
|
359
|
+
import Row from "./../../Containers/Row/index.vue";
|
|
360
|
+
import Container from "./../../Containers/Container/index.vue";
|
|
361
|
+
import Column from "./../../Containers/Column/index.vue";
|
|
362
|
+
import FooterSocialShare from "./FooterSocialShare/index.vue";
|
|
363
|
+
import CaretUp from "./../../../assets/icons/caret-up.svg?url";
|
|
364
|
+
import CaretDown from "./../../../assets/icons/caret-down.svg?url";
|
|
365
|
+
import WorkSafeLogo from "./../../../assets/icons/AppFooter/worksafe-footer-logo.svg?url";
|
|
366
|
+
import VicGovLogo from "./../../../assets/icons/brand-VicStateGov-logo-reversed.svg?url";
|
|
367
|
+
import ExternalLink from "./../../../assets/icons/external-link-16px.svg?url";
|
|
368
|
+
import ExternalLinkRaw from "./../../../assets/icons/external-link.svg?url";
|
|
369
|
+
import AboriginalFlag from "./../../../assets/icons/AppFooter/australian-aboriginal-flag.svg?url";
|
|
370
|
+
import PrideFlag from "./../../../assets/icons/AppFooter/pride-flag.svg?url";
|
|
371
|
+
import TorresStraitFlag from "./../../../assets/icons/AppFooter/torres-strait-islanders-flag.svg?url";
|
|
372
|
+
import WorkWellLogo from "./../../../assets/icons/AppFooter/logo-workwell-reversed.svg?url";
|
|
373
|
+
import { format } from "date-fns";
|
|
374
|
+
import Icon from "./../../SubComponents/Icon/index.vue";
|
|
375
|
+
import CtaButton from "./../../SubComponents/CtaButton/index.vue";
|
|
376
|
+
import Tick from "./../../../assets/icons/tick.svg?url";
|
|
379
377
|
|
|
380
378
|
export default {
|
|
381
|
-
name:
|
|
379
|
+
name: "AppFooter",
|
|
382
380
|
components: {
|
|
383
381
|
FooterSocialShare,
|
|
384
382
|
Column,
|
|
@@ -425,28 +423,27 @@ export default {
|
|
|
425
423
|
showForm: false,
|
|
426
424
|
submitted: false,
|
|
427
425
|
endpoint:
|
|
428
|
-
(this.$config
|
|
429
|
-
|
|
430
|
-
: process.env.CONTENT_API_URL) + '/webform_rest/submit?_format=json',
|
|
426
|
+
(this.$config ? this.$config.public.apiURL : process.env.CONTENT_API_URL) +
|
|
427
|
+
"/webform_rest/submit?_format=json",
|
|
431
428
|
response: {
|
|
432
|
-
webform_id:
|
|
433
|
-
page_url:
|
|
434
|
-
was_the_information_on_this_page_helpful_:
|
|
435
|
-
message:
|
|
429
|
+
webform_id: "page_feedback_form",
|
|
430
|
+
page_url: "",
|
|
431
|
+
was_the_information_on_this_page_helpful_: "",
|
|
432
|
+
message: "",
|
|
436
433
|
},
|
|
437
|
-
}
|
|
434
|
+
};
|
|
438
435
|
},
|
|
439
436
|
computed: {
|
|
440
437
|
updateDate() {
|
|
441
438
|
// Change to remove hydration date
|
|
442
439
|
return new Date(this.changedDate)
|
|
443
|
-
.toLocaleString(
|
|
444
|
-
timeZone:
|
|
440
|
+
.toLocaleString("en-AU", {
|
|
441
|
+
timeZone: "Australia/Sydney",
|
|
445
442
|
})
|
|
446
|
-
.split(
|
|
443
|
+
.split(",")[0];
|
|
447
444
|
},
|
|
448
445
|
isMobile() {
|
|
449
|
-
return this.windowWidth < 768
|
|
446
|
+
return this.windowWidth < 768;
|
|
450
447
|
},
|
|
451
448
|
// Why send junk id
|
|
452
449
|
// processID() {
|
|
@@ -455,73 +452,73 @@ export default {
|
|
|
455
452
|
},
|
|
456
453
|
watch: {
|
|
457
454
|
$route() {
|
|
458
|
-
this.showForm = false
|
|
459
|
-
this.submitted = false
|
|
455
|
+
this.showForm = false;
|
|
456
|
+
this.submitted = false;
|
|
460
457
|
},
|
|
461
458
|
showForm: {
|
|
462
459
|
handler: function () {
|
|
463
|
-
this.initialiseFeedback()
|
|
460
|
+
this.initialiseFeedback();
|
|
464
461
|
},
|
|
465
462
|
},
|
|
466
463
|
},
|
|
467
464
|
mounted() {
|
|
468
465
|
this.$nextTick(() => {
|
|
469
|
-
window.addEventListener(
|
|
470
|
-
})
|
|
471
|
-
this.onResize()
|
|
466
|
+
window.addEventListener("resize", this.onResize);
|
|
467
|
+
});
|
|
468
|
+
this.onResize();
|
|
472
469
|
},
|
|
473
470
|
beforeDestroy() {
|
|
474
|
-
window.removeEventListener(
|
|
471
|
+
window.removeEventListener("resize", this.onResize);
|
|
475
472
|
},
|
|
476
473
|
methods: {
|
|
477
474
|
initialiseFeedback() {
|
|
478
475
|
if (!this.showForm) {
|
|
479
|
-
var rbY = document.getElementById(
|
|
480
|
-
rbY.checked = false
|
|
481
|
-
var rbN = document.getElementById(
|
|
482
|
-
rbN.checked = false
|
|
476
|
+
var rbY = document.getElementById("frYes");
|
|
477
|
+
rbY.checked = false;
|
|
478
|
+
var rbN = document.getElementById("frNo");
|
|
479
|
+
rbN.checked = false;
|
|
483
480
|
}
|
|
484
481
|
},
|
|
485
482
|
setResponse(event) {
|
|
486
|
-
var answer = event.target.value
|
|
487
|
-
this.response.was_the_information_on_this_page_helpful_ = answer
|
|
488
|
-
this.response.page_url = window.location.href
|
|
489
|
-
this.showForm = true
|
|
490
|
-
this.fireGtagHelpful()
|
|
483
|
+
var answer = event.target.value;
|
|
484
|
+
this.response.was_the_information_on_this_page_helpful_ = answer;
|
|
485
|
+
this.response.page_url = window.location.href;
|
|
486
|
+
this.showForm = true;
|
|
487
|
+
this.fireGtagHelpful();
|
|
491
488
|
},
|
|
492
489
|
cancelFeedback() {
|
|
493
|
-
this.showForm = false
|
|
490
|
+
this.showForm = false;
|
|
494
491
|
},
|
|
495
492
|
async submitFeedback() {
|
|
496
493
|
if (this.$gtm) {
|
|
497
494
|
try {
|
|
498
|
-
const res = await this.$axios.post(this.endpoint, this.response)
|
|
495
|
+
const res = await this.$axios.post(this.endpoint, this.response);
|
|
499
496
|
if (res.data && res.data.sid) {
|
|
500
|
-
this.submitted = true
|
|
501
|
-
this.showForm = false
|
|
502
|
-
this.fireGtagFeedback()
|
|
497
|
+
this.submitted = true;
|
|
498
|
+
this.showForm = false;
|
|
499
|
+
this.fireGtagFeedback();
|
|
503
500
|
}
|
|
504
501
|
} catch (e) {
|
|
505
502
|
// eslint-disable-next-line no-console
|
|
506
|
-
console.error(
|
|
503
|
+
console.error("Error submitting webform");
|
|
507
504
|
}
|
|
508
505
|
} else {
|
|
509
|
-
this.submitted = true
|
|
510
|
-
this.showForm = false
|
|
506
|
+
this.submitted = true;
|
|
507
|
+
this.showForm = false;
|
|
511
508
|
}
|
|
512
509
|
},
|
|
513
510
|
isSet(ans) {
|
|
514
|
-
return this.response.was_the_information_on_this_page_helpful_ === ans
|
|
511
|
+
return this.response.was_the_information_on_this_page_helpful_ === ans;
|
|
515
512
|
},
|
|
516
513
|
fireGtagHelpful() {
|
|
517
514
|
const attrs = {
|
|
518
|
-
event:
|
|
515
|
+
event: "custom.interaction.helpful",
|
|
519
516
|
label: this.response.was_the_information_on_this_page_helpful_,
|
|
520
517
|
//title: this.$store?.state?.page?.content?.title,
|
|
521
518
|
title: this.$pageStore?.content?.title,
|
|
522
|
-
}
|
|
519
|
+
};
|
|
523
520
|
if (this.$gtm) {
|
|
524
|
-
this.$gtm.push({ event:
|
|
521
|
+
this.$gtm.push({ event: "custom.interaction.helpful", ...attrs });
|
|
525
522
|
}
|
|
526
523
|
},
|
|
527
524
|
fireGtagFeedback() {
|
|
@@ -530,49 +527,49 @@ export default {
|
|
|
530
527
|
title: this.$pageStore?.content?.title,
|
|
531
528
|
label: this.response.was_the_information_on_this_page_helpful_,
|
|
532
529
|
// processID: this.processID, why send GTM junk id
|
|
533
|
-
}
|
|
530
|
+
};
|
|
534
531
|
if (this.$gtm) {
|
|
535
532
|
this.$gtm.push({
|
|
536
|
-
event:
|
|
533
|
+
event: "custom.interaction.helpful.feedback",
|
|
537
534
|
...attrs,
|
|
538
|
-
})
|
|
535
|
+
});
|
|
539
536
|
}
|
|
540
537
|
},
|
|
541
538
|
backToTop() {
|
|
542
539
|
if (this.$bus) {
|
|
543
|
-
this.$bus.$emit(
|
|
540
|
+
this.$bus.$emit("scrollToTop");
|
|
544
541
|
}
|
|
545
542
|
},
|
|
546
543
|
isAbsoluteUrl(uri) {
|
|
547
|
-
let r = new RegExp(
|
|
548
|
-
return r.test(uri)
|
|
544
|
+
let r = new RegExp("^(?:[a-z]+:)?//", "i");
|
|
545
|
+
return r.test(uri);
|
|
549
546
|
},
|
|
550
547
|
subscribe() {
|
|
551
548
|
window.location =
|
|
552
|
-
|
|
549
|
+
"https://comms.worksafe.vic.gov.au/link/id/zzzz5c2d405926ec7534Pzzzz4ff385a2d38d8616/page.html?prompt=1";
|
|
553
550
|
},
|
|
554
551
|
handleMenuItemClick(menuFooter, index) {
|
|
555
552
|
// splice is needed for vue to pick up that changes to the footerMenu array and re-render the screen
|
|
556
553
|
if (this.isMobile) {
|
|
557
554
|
for (let i = 0; i < menuFooter.length; i++) {
|
|
558
|
-
let newMenuItem = menuFooter[i]
|
|
559
|
-
this.contactMenuIsOpen = false
|
|
555
|
+
let newMenuItem = menuFooter[i];
|
|
556
|
+
this.contactMenuIsOpen = false;
|
|
560
557
|
if (i === index) {
|
|
561
|
-
newMenuItem.isOpen = !newMenuItem.isOpen
|
|
558
|
+
newMenuItem.isOpen = !newMenuItem.isOpen;
|
|
562
559
|
} else {
|
|
563
|
-
newMenuItem.isOpen = false
|
|
560
|
+
newMenuItem.isOpen = false;
|
|
564
561
|
}
|
|
565
|
-
menuFooter.splice(i, 1, newMenuItem)
|
|
562
|
+
menuFooter.splice(i, 1, newMenuItem);
|
|
566
563
|
}
|
|
567
564
|
}
|
|
568
565
|
},
|
|
569
566
|
handleContactItemClick(menuFooter) {
|
|
570
567
|
if (this.isMobile) {
|
|
571
568
|
for (let i = 0; i < menuFooter.length; i++) {
|
|
572
|
-
let newMenuItem = menuFooter[i]
|
|
573
|
-
this.contactMenuIsOpen = !this.contactMenuIsOpen
|
|
574
|
-
newMenuItem.isOpen = false
|
|
575
|
-
menuFooter.splice(i, 1, newMenuItem)
|
|
569
|
+
let newMenuItem = menuFooter[i];
|
|
570
|
+
this.contactMenuIsOpen = !this.contactMenuIsOpen;
|
|
571
|
+
newMenuItem.isOpen = false;
|
|
572
|
+
menuFooter.splice(i, 1, newMenuItem);
|
|
576
573
|
}
|
|
577
574
|
}
|
|
578
575
|
},
|
|
@@ -581,14 +578,14 @@ export default {
|
|
|
581
578
|
if (event.keyCode === 32 || event.keyCode === 13) {
|
|
582
579
|
//splice is needed for vue to pick up that changes to the menuFooter array and re-render the screen
|
|
583
580
|
for (let i = 0; i < menuFooter.length; i++) {
|
|
584
|
-
let newMenuItem = menuFooter[i]
|
|
585
|
-
this.contactMenuIsOpen = false
|
|
581
|
+
let newMenuItem = menuFooter[i];
|
|
582
|
+
this.contactMenuIsOpen = false;
|
|
586
583
|
if (i === index) {
|
|
587
|
-
newMenuItem.isOpen = !newMenuItem.isOpen
|
|
584
|
+
newMenuItem.isOpen = !newMenuItem.isOpen;
|
|
588
585
|
} else {
|
|
589
|
-
newMenuItem.isOpen = false
|
|
586
|
+
newMenuItem.isOpen = false;
|
|
590
587
|
}
|
|
591
|
-
menuFooter.splice(i, 1, newMenuItem)
|
|
588
|
+
menuFooter.splice(i, 1, newMenuItem);
|
|
592
589
|
}
|
|
593
590
|
}
|
|
594
591
|
}
|
|
@@ -597,26 +594,26 @@ export default {
|
|
|
597
594
|
if (this.isMobile) {
|
|
598
595
|
if (event.keyCode === 32 || event.keyCode === 13) {
|
|
599
596
|
for (let i = 0; i < menuFooter.length; i++) {
|
|
600
|
-
let newMenuItem = menuFooter[i]
|
|
601
|
-
this.contactMenuIsOpen = !this.contactMenuIsOpen
|
|
602
|
-
newMenuItem.isOpen = false
|
|
603
|
-
menuFooter.splice(i, 1, newMenuItem)
|
|
597
|
+
let newMenuItem = menuFooter[i];
|
|
598
|
+
this.contactMenuIsOpen = !this.contactMenuIsOpen;
|
|
599
|
+
newMenuItem.isOpen = false;
|
|
600
|
+
menuFooter.splice(i, 1, newMenuItem);
|
|
604
601
|
}
|
|
605
602
|
}
|
|
606
603
|
}
|
|
607
604
|
},
|
|
608
605
|
onResize() {
|
|
609
|
-
this.windowWidth = window.innerWidth
|
|
610
|
-
let titles = document.getElementsByClassName(
|
|
606
|
+
this.windowWidth = window.innerWidth;
|
|
607
|
+
let titles = document.getElementsByClassName("app-footer-menu__title");
|
|
611
608
|
if (Array.isArray(titles)) {
|
|
612
609
|
if (this.isMobile) {
|
|
613
610
|
titles.forEach((t) => {
|
|
614
|
-
t.setAttribute(
|
|
615
|
-
})
|
|
611
|
+
t.setAttribute("tabIndex", "0");
|
|
612
|
+
});
|
|
616
613
|
} else {
|
|
617
614
|
titles.forEach((t) => {
|
|
618
|
-
t.removeAttribute(
|
|
619
|
-
})
|
|
615
|
+
t.removeAttribute("tabIndex");
|
|
616
|
+
});
|
|
620
617
|
}
|
|
621
618
|
}
|
|
622
619
|
},
|
|
@@ -624,18 +621,18 @@ export default {
|
|
|
624
621
|
if (item.absolute) {
|
|
625
622
|
if (this.$gtm) {
|
|
626
623
|
this.$gtm.push({
|
|
627
|
-
event:
|
|
624
|
+
event: "custom.interaction.outboundlink",
|
|
628
625
|
category: item.title,
|
|
629
626
|
label: item.absolute,
|
|
630
|
-
})
|
|
627
|
+
});
|
|
631
628
|
}
|
|
632
|
-
window.open(item.absolute)
|
|
629
|
+
window.open(item.absolute);
|
|
633
630
|
}
|
|
634
631
|
},
|
|
635
632
|
},
|
|
636
|
-
}
|
|
633
|
+
};
|
|
637
634
|
</script>
|
|
638
635
|
|
|
639
636
|
<style lang="scss" scoped>
|
|
640
|
-
@import
|
|
637
|
+
@import "./styles";
|
|
641
638
|
</style>
|
|
@@ -7,7 +7,13 @@
|
|
|
7
7
|
@click="$emit('closed')"
|
|
8
8
|
>
|
|
9
9
|
Close menu
|
|
10
|
-
<img
|
|
10
|
+
<img
|
|
11
|
+
class="app-search__close-icon"
|
|
12
|
+
alt="search close icon"
|
|
13
|
+
width="22"
|
|
14
|
+
height="18"
|
|
15
|
+
:src="Close"
|
|
16
|
+
/>
|
|
11
17
|
</button>
|
|
12
18
|
<form @submit.prevent>
|
|
13
19
|
<label class="app-search__label font-weight-bold" for="app-search--search-input-box"
|
|
@@ -18,7 +18,7 @@ const contentParser = () => {
|
|
|
18
18
|
export default {
|
|
19
19
|
title: 'Global/AppHeader',
|
|
20
20
|
component: AppHeader,
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
data() {
|
|
23
23
|
return {
|
|
24
24
|
appHeaderData
|
|
@@ -71,4 +71,4 @@ const DefaultContent = (args) => ({
|
|
|
71
71
|
`
|
|
72
72
|
})
|
|
73
73
|
|
|
74
|
-
export const
|
|
74
|
+
export const Former = DefaultContent.bind({})
|
|
@@ -7,12 +7,16 @@
|
|
|
7
7
|
@click="$emit('closed')"
|
|
8
8
|
>
|
|
9
9
|
Close menu
|
|
10
|
-
<img
|
|
10
|
+
<img
|
|
11
|
+
class="app-search__close-icon"
|
|
12
|
+
width="22"
|
|
13
|
+
height="18"
|
|
14
|
+
:src="Close"
|
|
15
|
+
alt="search close icon"
|
|
16
|
+
/>
|
|
11
17
|
</button>
|
|
12
18
|
<form @submit.prevent>
|
|
13
|
-
<label
|
|
14
|
-
class="app-search__label font-weight-bold"
|
|
15
|
-
for="app-search--search-input-box"
|
|
19
|
+
<label class="app-search__label font-weight-bold" for="app-search--search-input-box"
|
|
16
20
|
>Search WorkSafe</label
|
|
17
21
|
>
|
|
18
22
|
<search
|
|
@@ -32,40 +36,40 @@
|
|
|
32
36
|
</template>
|
|
33
37
|
|
|
34
38
|
<script>
|
|
35
|
-
import Close from
|
|
36
|
-
import Search from
|
|
39
|
+
import Close from "../../../../assets/icons/close.svg?url";
|
|
40
|
+
import Search from "../../../SubComponents/Search/index.vue";
|
|
37
41
|
|
|
38
42
|
export default {
|
|
39
|
-
name:
|
|
43
|
+
name: "ModalSearch",
|
|
40
44
|
components: { Search },
|
|
41
45
|
props: {
|
|
42
46
|
searchQuery: {
|
|
43
47
|
type: String,
|
|
44
|
-
default:
|
|
48
|
+
default: "",
|
|
45
49
|
},
|
|
46
50
|
contentParser: {
|
|
47
51
|
type: Function,
|
|
48
|
-
required: true
|
|
52
|
+
required: true,
|
|
49
53
|
},
|
|
50
54
|
googleSearchFlag: {
|
|
51
55
|
type: String,
|
|
52
|
-
default:
|
|
53
|
-
}
|
|
56
|
+
default: "googlerest",
|
|
57
|
+
},
|
|
54
58
|
},
|
|
55
59
|
data() {
|
|
56
60
|
return {
|
|
57
61
|
pageLimit: 20,
|
|
58
62
|
pageNumber: 1,
|
|
59
63
|
searchResults: null,
|
|
60
|
-
Close
|
|
61
|
-
}
|
|
64
|
+
Close,
|
|
65
|
+
};
|
|
62
66
|
},
|
|
63
67
|
mounted() {
|
|
64
|
-
this.$refs.searchInputBox.$el.querySelector(
|
|
65
|
-
}
|
|
66
|
-
}
|
|
68
|
+
this.$refs.searchInputBox.$el.querySelector("input").focus();
|
|
69
|
+
},
|
|
70
|
+
};
|
|
67
71
|
</script>
|
|
68
72
|
|
|
69
73
|
<style lang="scss" scoped>
|
|
70
|
-
@import
|
|
74
|
+
@import "./styles";
|
|
71
75
|
</style>
|
|
@@ -16,7 +16,7 @@ const contentParser = () => {
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
export default {
|
|
19
|
-
title: '
|
|
19
|
+
title: 'Global/AppHeader',
|
|
20
20
|
component: AppHeader,
|
|
21
21
|
tags: ['autodocs'],
|
|
22
22
|
data() {
|
|
@@ -71,4 +71,4 @@ const DefaultContent = (args) => ({
|
|
|
71
71
|
`
|
|
72
72
|
})
|
|
73
73
|
|
|
74
|
-
export const
|
|
74
|
+
export const New = DefaultContent.bind({})
|