@worksafevictoria/wcl7.5 1.14.0-beta.1 → 1.14.0-beta.11
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/package.json +1 -1
- package/src/assets/icons/Mental-injury.svg +40 -0
- package/src/assets/icons/Physical-injury.svg +11 -0
- package/src/assets/icons/icon-view-off.svg +1 -0
- package/src/assets/icons/other.svg +19 -0
- package/src/components/Containers/SectionGroup/index.vue +23 -23
- package/src/components/Paragraphs/Accordion/index.stories.js +3 -3
- package/src/components/Paragraphs/Accordion/index.vue +3 -3
- package/src/components/Paragraphs/Directory/Asbestos/Records/SingleRecord/index.vue +3 -30
- package/src/components/Paragraphs/Directory/Records/PRS/recordContent.vue +11 -0
- package/src/components/Paragraphs/RTWPlanner/Home/index.vue +83 -0
- package/src/components/Paragraphs/RTWPlanner/NavBar/index.vue +44 -0
- package/src/components/Paragraphs/RTWPlanner/Planners/PlanTasks.vue +169 -0
- package/src/components/Paragraphs/RTWPlanner/Planners/index.vue +239 -0
- package/src/components/Paragraphs/RTWPlanner/icons/ChevRightIcon.vue +16 -0
- package/src/components/Paragraphs/RTWPlanner/icons/DeleteIcon.vue +13 -0
- package/src/components/Paragraphs/RTWPlanner/icons/MentalInjury.vue +42 -0
- package/src/components/Paragraphs/RTWPlanner/icons/NotepadIcon.vue +95 -0
- package/src/components/Paragraphs/RTWPlanner/icons/OtherInjury.vue +20 -0
- package/src/components/Paragraphs/RTWPlanner/icons/PhysicalInjury.vue +13 -0
- package/src/components/Paragraphs/RTWPlanner/icons/PlusCircleIcon.vue +36 -0
- package/src/components/Paragraphs/RTWPlanner/icons/TickCircleIcon.vue +13 -0
- package/src/components/Paragraphs/RTWPlanner/index.stories.js +26 -0
- package/src/components/Paragraphs/RTWPlanner/index.vue +41 -0
- package/src/components/Paragraphs/TextMedia/index.vue +107 -9
- package/src/components/Paragraphs/VideoPlayer/index.vue +157 -23
- package/src/components/SubComponents/VideoThumbnail/index.vue +5 -1
package/package.json
CHANGED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
3
|
+
width="800px"
|
|
4
|
+
height="800px"
|
|
5
|
+
viewBox="0 0 48 48"
|
|
6
|
+
fill="none"
|
|
7
|
+
>
|
|
8
|
+
<path
|
|
9
|
+
fill-rule="evenodd"
|
|
10
|
+
clip-rule="evenodd"
|
|
11
|
+
d="M37.2847 25.6154L37.1193 25.2621C36.4062 23.7381 36.1988 22.1238 36.1366 20.6919C36.1052 19.9703 36.11 19.257 36.1176 18.6014C36.1187 18.5113 36.1198 18.4225 36.1209 18.335C36.1279 17.7692 36.1342 17.2553 36.123 16.7604C36.0756 14.8106 35.4636 12.9118 34.355 11.2858C33.0921 9.71615 31.4415 8.48173 29.5544 7.70176L29.5216 7.6882L29.4893 7.67348C26.935 6.50995 24.1507 5.908 21.3318 5.91114L21.3296 5.91115C17.7824 5.91115 14.3879 7.29451 11.8909 9.74531C9.39511 12.1949 8 15.5091 8 18.9569C8 21.0012 8.59295 23.3328 9.62467 25.4904C10.6588 27.653 12.0607 29.4888 13.5372 30.6266L14.3164 31.2271V40.1425C14.6413 40.5448 15.2724 41.0416 16.219 41.4724C17.3773 41.9997 18.5419 42.2133 19.2158 42.1583L19.2971 42.1516H19.3786C21.3349 42.1516 22.2503 41.5988 22.6443 41.2626C22.7871 41.1407 22.8864 41.026 22.953 40.9356V35.4002L25.4499 36.0456L25.4511 36.0459L25.4521 36.0462L25.4534 36.0465L25.4656 36.0495C25.4811 36.0533 25.5077 36.0597 25.5448 36.0683C25.619 36.0855 25.7345 36.1111 25.8852 36.1414C26.1875 36.202 26.6274 36.2802 27.1577 36.3457C28.2343 36.4785 29.6077 36.5491 30.9339 36.3545C32.2715 36.1584 33.3862 35.7193 34.1529 34.9857C34.8668 34.3024 35.4954 33.1581 35.4954 31.0618V29.352L37.1767 29.0874L37.1781 29.0872L37.1862 29.0858C37.1922 29.0847 37.2007 29.0832 37.2118 29.0811C37.2228 29.0791 37.2362 29.0765 37.2518 29.0735C37.315 29.061 37.413 29.0403 37.5345 29.0101C37.7834 28.9483 38.1014 28.854 38.4114 28.7232C38.7332 28.5875 38.9648 28.4464 39.1013 28.3262C39.1288 28.3019 39.1481 28.2825 39.1614 28.268C39.1565 28.2144 39.1378 28.1044 39.068 27.9264C38.9588 27.6481 38.7721 27.3265 38.5331 26.9938C38.2994 26.6687 38.0509 26.3816 37.8573 26.1735C37.762 26.071 37.6837 25.9916 37.632 25.9404C37.6189 25.9274 37.6075 25.9163 37.5982 25.9072C37.5892 25.8984 37.582 25.8915 37.5767 25.8865L37.5685 25.8786L37.5674 25.8777L37.2847 25.6154ZM24.953 37.9829C24.953 37.9829 25.7548 38.1901 26.953 38.3355C30.4936 38.7652 37.4954 38.655 37.4954 31.0618C37.4954 31.0618 40.7982 30.5421 41.1327 28.6545C41.4671 26.767 38.9308 24.4144 38.9308 24.4144C38.0683 22.5713 38.0953 20.4009 38.1207 18.3634C38.1277 17.8001 38.1346 17.2469 38.1225 16.7137C38.0654 14.3491 37.3155 12.0508 35.9624 10.0936C34.4807 8.23043 32.5377 6.77069 30.3183 5.85341C27.5022 4.57059 24.4343 3.90769 21.3296 3.91115C17.2639 3.91115 13.3648 5.49632 10.4899 8.31794C7.61508 11.1396 6 14.9665 6 18.9569C6 23.7578 8.74879 29.4615 12.3164 32.2108V40.7048C13.3287 42.828 17.1475 44.3338 19.3786 44.1516C24.1168 44.1516 24.953 41.416 24.953 41.416V37.9829Z"
|
|
12
|
+
fill="#333333"
|
|
13
|
+
/>
|
|
14
|
+
<path
|
|
15
|
+
d="M26.7229 20.1457C27.4959 20.1457 27.2508 19.9188 27.8892 19.4947C28.5374 19.918 29.3023 20.1399 30.0828 20.1311L32.5622 19.2531C33.2609 18.6926 33.7405 17.9155 33.9208 17.0521C34.1012 16.1886 33.9713 15.291 33.5529 14.5096C33.1345 13.7281 32.4529 13.1103 31.6224 12.7594C31.4328 11.9234 30.9551 11.1756 30.2686 10.6402L27.8484 9.81597H27.5759C27.0375 9.05158 26.2294 8.50633 25.3049 8.28388L21.116 8C20.2535 8.06974 19.4402 8.41984 18.807 8.99394C18.5078 8.92529 18.2016 8.88971 17.8941 8.88787C17.1498 8.88936 16.4218 9.10047 15.7981 9.49572C15.1743 9.89097 14.6815 10.4535 14.379 11.1153L12.4074 12.4744C11.9169 13.1213 11.6528 13.9044 11.6541 14.7084C11.6492 15.0445 11.6951 15.3796 11.7903 15.7028C11.273 16.3559 10.9949 17.1586 11.0001 17.9832C10.9988 18.9396 11.3743 19.8601 12.0492 20.5554C12.1036 21.2401 12.3495 21.8973 12.7601 22.4558C13.1708 23.0143 13.7306 23.4529 14.379 23.7242C15.1261 24.1799 15.7587 24.7929 16.2302 25.518C16.7018 26.243 16.8964 27.0617 17 27.9138H21.116V23.9363C21.1151 23.2301 21.3176 22.5377 21.7005 21.9378C22.0834 21.3378 22.2979 20.8543 22.9489 20.5421C23.5588 20.315 24.1084 19.9569 24.5566 19.4947C25.195 19.9188 25.95 20.1457 26.7229 20.1457Z"
|
|
16
|
+
fill="#333333"
|
|
17
|
+
/>
|
|
18
|
+
<path
|
|
19
|
+
d="M34 23.5C34 24.3284 33.3284 25 32.5 25C31.6716 25 31 24.3284 31 23.5C31 22.6716 31.6716 22 32.5 22C33.3284 22 34 22.6716 34 23.5Z"
|
|
20
|
+
fill="#333333"
|
|
21
|
+
/>
|
|
22
|
+
<path
|
|
23
|
+
fill-rule="evenodd"
|
|
24
|
+
clip-rule="evenodd"
|
|
25
|
+
d="M21 32H17V30H21V32Z"
|
|
26
|
+
fill="#333333"
|
|
27
|
+
/>
|
|
28
|
+
<path
|
|
29
|
+
fill-rule="evenodd"
|
|
30
|
+
clip-rule="evenodd"
|
|
31
|
+
d="M21 36H17V34H21V36Z"
|
|
32
|
+
fill="#333333"
|
|
33
|
+
/>
|
|
34
|
+
<path
|
|
35
|
+
fill-rule="evenodd"
|
|
36
|
+
clip-rule="evenodd"
|
|
37
|
+
d="M21 40H17V38H21V40Z"
|
|
38
|
+
fill="#333333"
|
|
39
|
+
/>
|
|
40
|
+
</svg>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
3
|
+
fill="#000000"
|
|
4
|
+
width="800px"
|
|
5
|
+
height="800px"
|
|
6
|
+
viewBox="-32 0 512 512"
|
|
7
|
+
>
|
|
8
|
+
<path
|
|
9
|
+
d="M277.37 11.98C261.08 4.47 243.11 0 224 0c-53.69 0-99.5 33.13-118.51 80h81.19l90.69-68.02zM342.51 80c-7.9-19.47-20.67-36.2-36.49-49.52L239.99 80h102.52zM224 256c70.69 0 128-57.31 128-128 0-5.48-.95-10.7-1.61-16H97.61c-.67 5.3-1.61 10.52-1.61 16 0 70.69 57.31 128 128 128zM80 299.7V512h128.26l-98.45-221.52A132.835 132.835 0 0 0 80 299.7zM0 464c0 26.51 21.49 48 48 48V320.24C18.88 344.89 0 381.26 0 422.4V464zm256-48h-55.38l42.67 96H256c26.47 0 48-21.53 48-48s-21.53-48-48-48zm57.6-128h-16.71c-22.24 10.18-46.88 16-72.89 16s-50.65-5.82-72.89-16h-7.37l42.67 96H256c44.11 0 80 35.89 80 80 0 18.08-6.26 34.59-16.41 48H400c26.51 0 48-21.49 48-48v-41.6c0-74.23-60.17-134.4-134.4-134.4z"
|
|
10
|
+
/>
|
|
11
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="140.743" height="128.766" viewBox="0 0 140.743 128.766"><g transform="translate(0 0)"><path d="M5.986,128.766A5.986,5.986,0,0,1,.45,120.507a.323.323,0,0,1,.083-.056.35.35,0,0,0,.073-.046L117.334,3.677a4.454,4.454,0,0,0,1.036-1.742l.107-.108a5.986,5.986,0,1,1,8.465,8.465L103,34.206a125.465,125.465,0,0,1,25.74,21.55,12.981,12.981,0,0,1,.042,17.348A125.8,125.8,0,0,1,115.556,85.64a118.682,118.682,0,0,1-16.05,11.144,90.43,90.43,0,0,1-17.951,7.984,63.583,63.583,0,0,1-18.927,3.054h-1.8a67.061,67.061,0,0,1-25.8-5.62L10.213,127.02A5.951,5.951,0,0,1,5.986,128.766Zm78.962-75.9a1.515,1.515,0,0,0-1.076.452L50.589,86.6A1.514,1.514,0,0,0,51,89.032,25.738,25.738,0,0,0,69.553,90.17,27.416,27.416,0,0,0,87.511,72.044a25.711,25.711,0,0,0-1.2-18.323,1.51,1.51,0,0,0-1.36-.854Z" transform="translate(8.661 0)" fill="#fff"/><path d="M44.106,51.784a1.461,1.461,0,0,0,.365-1.437A25.83,25.83,0,0,1,43.417,43.4,26.937,26.937,0,0,1,70.355,16.467,25.6,25.6,0,0,1,77.3,17.5a1.461,1.461,0,0,0,1.437-.371L90.354,5.506a1.52,1.52,0,0,0-.6-2.52A62.333,62.333,0,0,0,70.355,0C44.615-.342,18.874,17.664,3.388,34.718a12.87,12.87,0,0,0-.042,17.36,126.959,126.959,0,0,0,20.58,18.138,1.532,1.532,0,0,0,1.951-.174Z" transform="translate(0 21.038)" fill="#fff"/></g></svg>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
3
|
+
viewBox="0 0 256 256"
|
|
4
|
+
fill="currentColor"
|
|
5
|
+
role="img"
|
|
6
|
+
aria-label="Icon"
|
|
7
|
+
focusable="false"
|
|
8
|
+
>
|
|
9
|
+
<g>
|
|
10
|
+
<circle cx="128" cy="22.4" r="21.1"/>
|
|
11
|
+
<path d="M223,51.5c-3.6-3.6-9.5-3.6-13.1,0l-23.3,23.3c0,0-18.1-18.2-18.3-18.3c-5.2-5.2-11.9-7.7-18.7-7.7H128h0h-21.6
|
|
12
|
+
c-6.8,0-13.5,2.6-18.7,7.7c-0.2,0.2-18.3,18.3-18.3,18.3L46.1,51.5c-3.6-3.6-9.5-3.6-13.1,0c-3.6,3.6-3.6,9.5,0,13.1l29.9,29.9
|
|
13
|
+
c3.6,3.6,9.5,3.6,13.1,0l18.4-18.5c0.5-0.5,1.1-0.8,1.9-0.8c1.5,0,2.6,1.2,2.6,2.6v23.8v44.9v95.1c0,0.5,0,0.9,0.1,1.4
|
|
14
|
+
c0.3,3.1,1.7,5.9,3.8,8c2.4,2.4,5.7,3.9,9.3,3.9c3.6,0,6.9-1.5,9.3-3.9c2.1-2.1,3.5-4.9,3.8-8c0-0.4,0.1-0.9,0.1-1.4v-92.4
|
|
15
|
+
c0-1.5,1.2-2.6,2.6-2.6s2.6,1.2,2.6,2.6v92.4c0,0.5,0,0.9,0.1,1.4c0.3,3.1,1.7,5.9,3.8,8c2.4,2.4,5.7,3.9,9.3,3.9s6.9-1.5,9.3-3.9
|
|
16
|
+
c2.1-2.1,3.5-4.9,3.8-8c0-0.4,0.1-0.9,0.1-1.4v-95.1h0V77.8c0-1.5,1.2-2.6,2.6-2.6c0.7,0,1.4,0.3,1.9,0.8L180,94.4
|
|
17
|
+
c3.6,3.6,9.5,3.6,13.1,0L223,64.5C226.6,60.9,226.6,55.1,223,51.5z"/>
|
|
18
|
+
</g>
|
|
19
|
+
</svg>
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
<slot name="preContent"></slot>
|
|
51
51
|
</column>
|
|
52
52
|
</row>
|
|
53
|
-
|
|
53
|
+
|
|
54
54
|
<div
|
|
55
55
|
class="section-group__content section-group__row"
|
|
56
56
|
:class="{
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
subHeading ||
|
|
62
62
|
$slots.headerRight
|
|
63
63
|
),
|
|
64
|
-
[`${contentClass}`]: hasContentClass
|
|
64
|
+
[`${contentClass}`]: hasContentClass,
|
|
65
65
|
}"
|
|
66
66
|
:style="applyBackgroundOn === 'content' ? backgroundStyle : null"
|
|
67
67
|
>
|
|
@@ -99,7 +99,7 @@ export default {
|
|
|
99
99
|
type: String,
|
|
100
100
|
default: 'page',
|
|
101
101
|
validator: (value) =>
|
|
102
|
-
['half-content', 'content', 'page', 'full'].indexOf(value) >= 0
|
|
102
|
+
['half-content', 'content', 'page', 'full'].indexOf(value) >= 0,
|
|
103
103
|
},
|
|
104
104
|
backgroundVariant: {
|
|
105
105
|
type: String,
|
|
@@ -113,48 +113,48 @@ export default {
|
|
|
113
113
|
'yellow',
|
|
114
114
|
'white',
|
|
115
115
|
'lightblue',
|
|
116
|
-
'lightred'
|
|
117
|
-
].indexOf(value) >= 0
|
|
116
|
+
'lightred',
|
|
117
|
+
].indexOf(value) >= 0,
|
|
118
118
|
},
|
|
119
119
|
applyBackgroundOn: {
|
|
120
120
|
type: String,
|
|
121
121
|
default: 'section',
|
|
122
122
|
validator: (value) =>
|
|
123
|
-
['content', 'block', 'container', 'section'].indexOf(value) >= 0
|
|
123
|
+
['content', 'block', 'container', 'section'].indexOf(value) >= 0,
|
|
124
124
|
},
|
|
125
125
|
backgroundImage: {
|
|
126
126
|
type: String,
|
|
127
|
-
default: ''
|
|
127
|
+
default: '',
|
|
128
128
|
},
|
|
129
129
|
noPaddingTop: {
|
|
130
|
-
type: Boolean
|
|
130
|
+
type: Boolean,
|
|
131
131
|
},
|
|
132
132
|
noPaddingBottom: {
|
|
133
|
-
type: Boolean
|
|
133
|
+
type: Boolean,
|
|
134
134
|
},
|
|
135
135
|
bordered: {
|
|
136
|
-
type: Boolean
|
|
136
|
+
type: Boolean,
|
|
137
137
|
},
|
|
138
138
|
rtl: {
|
|
139
139
|
type: Boolean,
|
|
140
|
-
default: false
|
|
140
|
+
default: false,
|
|
141
141
|
},
|
|
142
142
|
title: {
|
|
143
143
|
type: String,
|
|
144
|
-
default: null
|
|
144
|
+
default: null,
|
|
145
145
|
},
|
|
146
146
|
subHeading: {
|
|
147
147
|
type: String,
|
|
148
|
-
default: null
|
|
148
|
+
default: null,
|
|
149
149
|
},
|
|
150
150
|
titleTag: {
|
|
151
151
|
type: String,
|
|
152
|
-
default: 'h2'
|
|
152
|
+
default: 'h2',
|
|
153
153
|
},
|
|
154
154
|
contentClass: {
|
|
155
155
|
type: String,
|
|
156
|
-
default: ''
|
|
157
|
-
}
|
|
156
|
+
default: '',
|
|
157
|
+
},
|
|
158
158
|
},
|
|
159
159
|
computed: {
|
|
160
160
|
generatedClass() {
|
|
@@ -162,7 +162,7 @@ export default {
|
|
|
162
162
|
rtl: this.rtl,
|
|
163
163
|
[`section-group--noPaddingTop`]: this.noPaddingTop,
|
|
164
164
|
[`section-group--noPaddingBottom`]: this.noPaddingBottom,
|
|
165
|
-
[`section-group--size-` + this.size]: !!this.size
|
|
165
|
+
[`section-group--size-` + this.size]: !!this.size,
|
|
166
166
|
}
|
|
167
167
|
},
|
|
168
168
|
backgroundStyle() {
|
|
@@ -175,7 +175,7 @@ export default {
|
|
|
175
175
|
[`background-size`]: `cover`,
|
|
176
176
|
[`background-position`]: `center center`,
|
|
177
177
|
color: '#ffffff',
|
|
178
|
-
['border-radius']: borderRadius
|
|
178
|
+
['border-radius']: borderRadius,
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
181
|
if (this.backgroundVariant) {
|
|
@@ -206,14 +206,14 @@ export default {
|
|
|
206
206
|
styles = {
|
|
207
207
|
...(styles || {}),
|
|
208
208
|
[`background-color`]: bgColour,
|
|
209
|
-
['border-radius']: borderRadius
|
|
209
|
+
['border-radius']: borderRadius,
|
|
210
210
|
}
|
|
211
211
|
}
|
|
212
212
|
|
|
213
213
|
if (this.bordered) {
|
|
214
214
|
styles = {
|
|
215
215
|
...(styles || {}),
|
|
216
|
-
[`border`]: `1px solid ` + colors.gray
|
|
216
|
+
[`border`]: `1px solid ` + colors.gray,
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
219
|
|
|
@@ -221,7 +221,7 @@ export default {
|
|
|
221
221
|
},
|
|
222
222
|
hasContentClass() {
|
|
223
223
|
return this.contentClass.length > 0
|
|
224
|
-
}
|
|
224
|
+
},
|
|
225
225
|
},
|
|
226
226
|
mounted() {
|
|
227
227
|
window.addEventListener('resize', this.setColumnSize)
|
|
@@ -241,8 +241,8 @@ export default {
|
|
|
241
241
|
this.$emit('isDesktopView', !isTabletView && !isMobileView)
|
|
242
242
|
this.$emit('isMobileOrTabletView', isMobileView || isTabletView)
|
|
243
243
|
})
|
|
244
|
-
}
|
|
245
|
-
}
|
|
244
|
+
},
|
|
245
|
+
},
|
|
246
246
|
}
|
|
247
247
|
</script>
|
|
248
248
|
|
|
@@ -5,7 +5,7 @@ const mockAccordionItems = [
|
|
|
5
5
|
field_title: 'Item one',
|
|
6
6
|
field_pre_heading: 'preheading text',
|
|
7
7
|
field_rich_text: {
|
|
8
|
-
|
|
8
|
+
processed:
|
|
9
9
|
'<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>',
|
|
10
10
|
},
|
|
11
11
|
id: 'id-1',
|
|
@@ -14,7 +14,7 @@ const mockAccordionItems = [
|
|
|
14
14
|
field_title: 'Item two',
|
|
15
15
|
field_pre_heading: 'preheading text',
|
|
16
16
|
field_rich_text: {
|
|
17
|
-
|
|
17
|
+
processed:
|
|
18
18
|
'<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>',
|
|
19
19
|
},
|
|
20
20
|
id: 'id-2',
|
|
@@ -23,7 +23,7 @@ const mockAccordionItems = [
|
|
|
23
23
|
field_title: 'Item three',
|
|
24
24
|
field_pre_heading: 'preheading text',
|
|
25
25
|
field_rich_text: {
|
|
26
|
-
|
|
26
|
+
processed:
|
|
27
27
|
'<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>',
|
|
28
28
|
},
|
|
29
29
|
id: 'id-3',
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
<stepper-item
|
|
23
23
|
v-if="isStepper"
|
|
24
24
|
:itemid="item.id ? item.id : '' + index"
|
|
25
|
-
:content="hasContent(item) ? item.field_rich_text.
|
|
25
|
+
:content="hasContent(item) ? item.field_rich_text.processed : ''"
|
|
26
26
|
:title="item.field_title"
|
|
27
27
|
class="accordion__item stepper"
|
|
28
28
|
:rtl="rtl || item.field_rtl"
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
<accordion-item
|
|
34
34
|
v-if="!isStepper"
|
|
35
35
|
:itemid="item.id ? item.id : '' + index"
|
|
36
|
-
:content="hasContent(item) ? item.field_rich_text.
|
|
36
|
+
:content="hasContent(item) ? item.field_rich_text.processed : ''"
|
|
37
37
|
:title="item.field_title"
|
|
38
38
|
class="accordion__item"
|
|
39
39
|
:rtl="rtl || item.field_rtl"
|
|
@@ -124,7 +124,7 @@ export default {
|
|
|
124
124
|
return false
|
|
125
125
|
},
|
|
126
126
|
hasContent(item) {
|
|
127
|
-
return item?.field_rich_text?.
|
|
127
|
+
return item?.field_rich_text?.processed
|
|
128
128
|
},
|
|
129
129
|
},
|
|
130
130
|
}
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
<div v-if="item.website">
|
|
64
64
|
<row>
|
|
65
65
|
<column>
|
|
66
|
-
<
|
|
66
|
+
<h5>Website</h5>
|
|
67
67
|
</column>
|
|
68
68
|
</row>
|
|
69
69
|
<row v-if="item.website !== ''">
|
|
@@ -72,40 +72,13 @@
|
|
|
72
72
|
{{ item.website }}
|
|
73
73
|
</a>
|
|
74
74
|
</row>
|
|
75
|
-
|
|
76
|
-
<column sm="2" class="label"> Phone </column>
|
|
77
|
-
<column sm="4" class="dir-additional-records">
|
|
78
|
-
{{ item.phone1 }}
|
|
79
|
-
</column>
|
|
80
|
-
</row> -->
|
|
81
|
-
<row v-if="item.mobile1">
|
|
82
|
-
<column sm="2" class="label"> Mobile </column>
|
|
83
|
-
<column sm="4" class="dir-additional-records">
|
|
84
|
-
{{ item.mobile1 }}
|
|
85
|
-
</column>
|
|
86
|
-
</row>
|
|
87
|
-
<row v-if="item.email1">
|
|
88
|
-
<column sm="2" class="label" > Email </column>
|
|
89
|
-
<column sm="4" class="dir-additional-records">
|
|
90
|
-
{{ item.email1 }}
|
|
91
|
-
</column>
|
|
92
|
-
</row>
|
|
93
|
-
</div>
|
|
75
|
+
</div>
|
|
94
76
|
<div v-if="item.serviceCategory">
|
|
95
77
|
<row class="row-dir-additional">
|
|
96
78
|
<column>
|
|
97
|
-
<
|
|
79
|
+
<h5>{{ item.serviceCategory }}</h5>
|
|
98
80
|
</column>
|
|
99
81
|
</row>
|
|
100
|
-
<!-- <row class="dir-additional-records">
|
|
101
|
-
<column>
|
|
102
|
-
<ul>
|
|
103
|
-
<li v-for="serv in item.services.split(',')" :key="serv.id">
|
|
104
|
-
{{ serv }}
|
|
105
|
-
</li>
|
|
106
|
-
</ul>
|
|
107
|
-
</column>
|
|
108
|
-
</row> -->
|
|
109
82
|
</div>
|
|
110
83
|
</div>
|
|
111
84
|
</container>
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<!-- eslint-disable vue/no-v-html -->
|
|
3
3
|
<container>
|
|
4
|
+
<div>
|
|
5
|
+
<hr />
|
|
6
|
+
</div>
|
|
4
7
|
<row>
|
|
5
8
|
<column sm="9">
|
|
6
9
|
<div v-if="item.outcome" class="record-details__outcome">
|
|
@@ -89,3 +92,11 @@ export default {
|
|
|
89
92
|
}
|
|
90
93
|
}
|
|
91
94
|
</script>
|
|
95
|
+
|
|
96
|
+
<style lang="scss" scoped>
|
|
97
|
+
|
|
98
|
+
.record-details__outcome {
|
|
99
|
+
margin-left: 20px !important;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
</style>
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<TextMedia
|
|
4
|
+
:media-type="'image'"
|
|
5
|
+
:title-text="textMedia.title"
|
|
6
|
+
:title-tag="textMedia.titleTag"
|
|
7
|
+
:content="textMedia.content"
|
|
8
|
+
:image="textMedia.image"
|
|
9
|
+
:rtl="textMedia.rtl"
|
|
10
|
+
/>
|
|
11
|
+
|
|
12
|
+
<Container fluid class="my-4">
|
|
13
|
+
<h2>Select your injury</h2>
|
|
14
|
+
|
|
15
|
+
<TextMedia
|
|
16
|
+
:media-type="'icon'"
|
|
17
|
+
:title-text="'Physical injuries'"
|
|
18
|
+
:content="`<p>
|
|
19
|
+
Physical injuries include anything that occurs to an employees body.
|
|
20
|
+
This tool supports employers to manage the return to work process
|
|
21
|
+
for non-complex physical injuries only.
|
|
22
|
+
</p><p><a href="#" class="cta-button">Continue to planner</a></p>`"
|
|
23
|
+
:glyph="PhysicalInjury"
|
|
24
|
+
:icon-alt="'PhysicalInjury icon'"
|
|
25
|
+
:glyph-height="60"
|
|
26
|
+
:glyph-width="60"
|
|
27
|
+
/>
|
|
28
|
+
|
|
29
|
+
<TextMedia
|
|
30
|
+
:media-type="'icon'"
|
|
31
|
+
:title-text="'Mental injuries'"
|
|
32
|
+
:content="`<p>
|
|
33
|
+
Mental injuries are complex and require tailored information for
|
|
34
|
+
employers to support injured workers with their return to work. This
|
|
35
|
+
tool does not currently give guidance for mental injuries.
|
|
36
|
+
</p><p><a href="#" class="cta-button white">Continue to planner</a></p>`"
|
|
37
|
+
:glyph="MentalInjury"
|
|
38
|
+
:icon-alt="'MentalInjury icon'"
|
|
39
|
+
:glyph-height="60"
|
|
40
|
+
:glyph-width="60"
|
|
41
|
+
/>
|
|
42
|
+
|
|
43
|
+
<TextMedia
|
|
44
|
+
:media-type="'icon'"
|
|
45
|
+
:title-text="'Other'"
|
|
46
|
+
:content="`<p>
|
|
47
|
+
If you are unsure about the injury type of your employee, gaining
|
|
48
|
+
additional support, reach out to your agent to get more information.
|
|
49
|
+
</p><p><a href="#" class="cta-button white">More information</a></p>`"
|
|
50
|
+
:glyph="OtherInjury"
|
|
51
|
+
:icon-alt="'Other icon'"
|
|
52
|
+
:glyph-height="60"
|
|
53
|
+
:glyph-width="60"
|
|
54
|
+
/>
|
|
55
|
+
</Container>
|
|
56
|
+
</div>
|
|
57
|
+
</template>
|
|
58
|
+
|
|
59
|
+
<script setup>
|
|
60
|
+
import { defineProps } from 'vue'
|
|
61
|
+
|
|
62
|
+
import Container from './../../../Containers/Container/index.vue'
|
|
63
|
+
import TextMedia from './../../TextMedia/index.vue'
|
|
64
|
+
import PhysicalInjury from './../../../../assets/icons/Physical-injury.svg?url'
|
|
65
|
+
import MentalInjury from './../../../../assets/icons/Mental-injury.svg?url'
|
|
66
|
+
import OtherInjury from './../../../../assets/icons/other.svg?url'
|
|
67
|
+
const emit = defineEmits(['newPlan'])
|
|
68
|
+
|
|
69
|
+
const props = defineProps({
|
|
70
|
+
textMedia: {
|
|
71
|
+
type: Object,
|
|
72
|
+
required: true,
|
|
73
|
+
},
|
|
74
|
+
})
|
|
75
|
+
</script>
|
|
76
|
+
|
|
77
|
+
<style scoped>
|
|
78
|
+
.lightgrey-bg {
|
|
79
|
+
border-radius: 12px;
|
|
80
|
+
border: 4px solid #727272;
|
|
81
|
+
background: #f5f5f5;
|
|
82
|
+
}
|
|
83
|
+
</style>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<BNavbar variant="light" class="border-bottom bg-white pb-0">
|
|
3
|
+
<BNavbarBrand>
|
|
4
|
+
<ChevRightIcon
|
|
5
|
+
class="ws-yellow"
|
|
6
|
+
style="width: 32px; height: 32px"
|
|
7
|
+
></ChevRightIcon>
|
|
8
|
+
<strong>Return to Work Planner</strong>
|
|
9
|
+
</BNavbarBrand>
|
|
10
|
+
<BNavbarToggle target="nav-collapse" />
|
|
11
|
+
<BNavbarNav class="ms-auto align-items-center">
|
|
12
|
+
<BNavItem href="/return-work-home">
|
|
13
|
+
<strong>Home</strong>
|
|
14
|
+
</BNavItem>
|
|
15
|
+
<BNavItem href="/return-work-poc">
|
|
16
|
+
<NotepadIcon class="me-2" style="width: 1em; height: 1em" />
|
|
17
|
+
<strong>My Planners</strong>
|
|
18
|
+
</BNavItem>
|
|
19
|
+
</BNavbarNav>
|
|
20
|
+
</BNavbar>
|
|
21
|
+
</template>
|
|
22
|
+
|
|
23
|
+
<script setup>
|
|
24
|
+
import ChevRightIcon from './../icons/ChevRightIcon.vue'
|
|
25
|
+
import NotepadIcon from './../icons/NotepadIcon.vue'
|
|
26
|
+
import {
|
|
27
|
+
BNavbar,
|
|
28
|
+
BNavbarBrand,
|
|
29
|
+
BNavbarToggle,
|
|
30
|
+
BNavbarNav,
|
|
31
|
+
BNavItem,
|
|
32
|
+
} from 'bootstrap-vue-next'
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<style lang="scss" scoped>
|
|
36
|
+
@import './../../../../includes/scss/all.scss';
|
|
37
|
+
.active {
|
|
38
|
+
color: black !important;
|
|
39
|
+
border-bottom: 5px solid $yellow;
|
|
40
|
+
}
|
|
41
|
+
.ws-yellow {
|
|
42
|
+
color: $yellow;
|
|
43
|
+
}
|
|
44
|
+
</style>
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<Container>
|
|
3
|
+
<Row>
|
|
4
|
+
<Column col="12">
|
|
5
|
+
<h2 class="fw-bold my-4">{{ props.activePlanner?.name }}'s planner</h2>
|
|
6
|
+
</Column>
|
|
7
|
+
</Row>
|
|
8
|
+
<Row>
|
|
9
|
+
<Column col="12" md="8">
|
|
10
|
+
<div class="card shadow-sm border-3 rounded-3 p-4">
|
|
11
|
+
<BCardText v-html="activeContent.html"></BCardText>
|
|
12
|
+
<CtaButton
|
|
13
|
+
:rtl="
|
|
14
|
+
isTaskCompleted(activeTask.id, activeContent.id) ? true : false
|
|
15
|
+
"
|
|
16
|
+
:workwell="
|
|
17
|
+
isTaskCompleted(activeTask.id, activeContent.id) ? true : false
|
|
18
|
+
"
|
|
19
|
+
@click="toggleTask(activeTask.id, activeContent.id)"
|
|
20
|
+
class="mt-1"
|
|
21
|
+
>
|
|
22
|
+
{{
|
|
23
|
+
isTaskCompleted(activeTask.id, activeContent.id)
|
|
24
|
+
? 'Completed'
|
|
25
|
+
: 'Mark Done'
|
|
26
|
+
}}
|
|
27
|
+
</CtaButton>
|
|
28
|
+
</div>
|
|
29
|
+
<div
|
|
30
|
+
role="button"
|
|
31
|
+
class="card shadow-sm border-3 rounded-3 p-4 mt-4 text-end"
|
|
32
|
+
:class="getNextTask() ? '' : 'disabled'"
|
|
33
|
+
@click="setActiveContent(getNextTask().task, getNextTask().content)"
|
|
34
|
+
>
|
|
35
|
+
<h4 class="fw-bold mt-0 mb-3">Go to next task</h4>
|
|
36
|
+
<p class="text-muted mb-0">
|
|
37
|
+
<span class="text-decoration-underline">
|
|
38
|
+
{{
|
|
39
|
+
getNextTask() ? getNextTask().content.btnText : 'No more tasks'
|
|
40
|
+
}}
|
|
41
|
+
</span>
|
|
42
|
+
</p>
|
|
43
|
+
</div>
|
|
44
|
+
</Column>
|
|
45
|
+
<Column col="12" md="4">
|
|
46
|
+
<div class="card shadow-sm border-3 rounded-3 p-4">
|
|
47
|
+
<h4 class="fw-bold mb-3">All tasks</h4>
|
|
48
|
+
<div v-for="task in props.tasks" :key="task.id" class="mb-3">
|
|
49
|
+
<p class="fw-bold">{{ task.title }}</p>
|
|
50
|
+
<div v-for="content in task.content" :key="content.id">
|
|
51
|
+
<button
|
|
52
|
+
class="d-flex justify-content-between align-items-center w-100 border-0 rounded-2 p-2 mb-2 text-start"
|
|
53
|
+
:class="
|
|
54
|
+
isTaskCompleted(task.id, content.id)
|
|
55
|
+
? activeContent.id === content.id
|
|
56
|
+
? 'bg-success-subtle text-dark fw-bold active-done'
|
|
57
|
+
: 'bg-success-subtle text-dark fw-bold'
|
|
58
|
+
: activeContent.id === content.id
|
|
59
|
+
? 'active'
|
|
60
|
+
: 'bg-light text-muted'
|
|
61
|
+
"
|
|
62
|
+
@click="setActiveContent(task, content)"
|
|
63
|
+
>
|
|
64
|
+
<span class="text-decoration-underline">
|
|
65
|
+
{{ content.btnText }}
|
|
66
|
+
</span>
|
|
67
|
+
<span
|
|
68
|
+
v-if="isTaskCompleted(task.id, content.id)"
|
|
69
|
+
class="text-success"
|
|
70
|
+
>
|
|
71
|
+
<TickCircleIcon
|
|
72
|
+
class="ms-2"
|
|
73
|
+
style="width: 2em; height: 2em"
|
|
74
|
+
/>
|
|
75
|
+
</span>
|
|
76
|
+
<span v-else class="text-muted">
|
|
77
|
+
<TickCircleIcon
|
|
78
|
+
class="ms-2"
|
|
79
|
+
style="width: 2em; height: 2em"
|
|
80
|
+
/>
|
|
81
|
+
</span>
|
|
82
|
+
</button>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
</div>
|
|
86
|
+
</Column>
|
|
87
|
+
</Row>
|
|
88
|
+
</Container>
|
|
89
|
+
</template>
|
|
90
|
+
|
|
91
|
+
<script setup>
|
|
92
|
+
import { ref } from 'vue'
|
|
93
|
+
import { CtaButton, Row, Column, Container } from '@worksafevictoria/wcl7.5'
|
|
94
|
+
import TickCircleIcon from './icons/TickCircleIcon.vue'
|
|
95
|
+
|
|
96
|
+
const props = defineProps({
|
|
97
|
+
activePlanner: { type: Object, required: true },
|
|
98
|
+
tasks: { type: Array, required: true }
|
|
99
|
+
})
|
|
100
|
+
|
|
101
|
+
const emit = defineEmits(['updatePlanner'])
|
|
102
|
+
const tasks = ref([])
|
|
103
|
+
const activeTask = ref(props.tasks[0] || { id: '', title: '', content: [] })
|
|
104
|
+
const activeContent = ref(
|
|
105
|
+
props.tasks[0]?.content[0] || { btnText: '', html: '' }
|
|
106
|
+
)
|
|
107
|
+
|
|
108
|
+
const toggleTask = (taskId, contentId) => {
|
|
109
|
+
const key = `${taskId}_${contentId}`
|
|
110
|
+
const updatedPlanner = {
|
|
111
|
+
...props.activePlanner,
|
|
112
|
+
tasksCompleted: [...props.activePlanner.tasksCompleted]
|
|
113
|
+
}
|
|
114
|
+
const index = updatedPlanner.tasksCompleted.indexOf(key)
|
|
115
|
+
if (index === -1) {
|
|
116
|
+
updatedPlanner.tasksCompleted.push(key)
|
|
117
|
+
} else {
|
|
118
|
+
updatedPlanner.tasksCompleted.splice(index, 1)
|
|
119
|
+
}
|
|
120
|
+
emit('updatePlanner', updatedPlanner)
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
const isTaskCompleted = (taskId, contentId) => {
|
|
124
|
+
const key = `${taskId}_${contentId}`
|
|
125
|
+
return props.activePlanner.tasksCompleted.includes(key)
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
const setActiveContent = (task, content) => {
|
|
129
|
+
console.log('🚀 ~ setActiveContent ~ task:', task)
|
|
130
|
+
activeTask.value = task
|
|
131
|
+
activeContent.value = content
|
|
132
|
+
scrollTo(0, 0)
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
const getNextTask = () => {
|
|
136
|
+
for (const task of props.tasks) {
|
|
137
|
+
for (const content of task.content) {
|
|
138
|
+
if (activeContent.value.id === content.id) {
|
|
139
|
+
const currentTaskIndex = props.tasks.indexOf(task)
|
|
140
|
+
const currentContentIndex = task.content.indexOf(content)
|
|
141
|
+
if (currentContentIndex + 1 < task.content.length) {
|
|
142
|
+
return { task, content: task.content[currentContentIndex + 1] }
|
|
143
|
+
} else if (currentTaskIndex + 1 < props.tasks.length) {
|
|
144
|
+
const nextTask = props.tasks[currentTaskIndex + 1]
|
|
145
|
+
return { task: nextTask, content: nextTask.content[0] }
|
|
146
|
+
} else {
|
|
147
|
+
return null
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
</script>
|
|
154
|
+
|
|
155
|
+
<style lang="scss" scoped>
|
|
156
|
+
@import '@worksafevictoria/wcl7.5/src/includes/scss/all.scss';
|
|
157
|
+
.active {
|
|
158
|
+
color: black !important;
|
|
159
|
+
background-color: $yellow !important;
|
|
160
|
+
}
|
|
161
|
+
.active-done {
|
|
162
|
+
border-left: 10px solid $green !important;
|
|
163
|
+
}
|
|
164
|
+
.disabled {
|
|
165
|
+
pointer-events: none;
|
|
166
|
+
opacity: 0.5;
|
|
167
|
+
cursor: not-allowed;
|
|
168
|
+
}
|
|
169
|
+
</style>
|