@worksafevictoria/wcl7.5 1.1.0-beta.8 → 1.1.0-beta.81

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 (327) hide show
  1. package/.env +1 -3
  2. package/.storybook/preview.js +20 -13
  3. package/README.md +4 -4
  4. package/bin/deploy.sh +1 -1
  5. package/ci/build/build_validation.yml +2 -2
  6. package/ci/release/beta.yml +4 -3
  7. package/ci/release/master.yml +4 -3
  8. package/jest.config.js +10 -8
  9. package/lib/utility.js +9 -8
  10. package/package.json +15 -13
  11. package/src/assets/icons/AppFooter/x-ws-footer.svg +10 -0
  12. package/src/assets/icons/AppFooter/x-ww-footer.svg +28 -0
  13. package/src/assets/icons/SocialShare/x-icon-white.svg +28 -0
  14. package/src/assets/icons/WSV-reversed.svg +20 -0
  15. package/src/assets/icons/contrast.svg +4 -0
  16. package/src/assets/icons/lang.svg +13 -0
  17. package/src/assets/icons/login.svg +4 -0
  18. package/src/assets/styles/modal.scss +51 -0
  19. package/src/components/Common/CardGrid/cardgrid.stories.js +4 -57
  20. package/src/components/Common/CardGrid/index.vue +64 -48
  21. package/src/components/Common/CardGridItem/card-grid-item-caret.vue +7 -4
  22. package/src/components/Common/CardGridItem/card-grid-item-icon.vue +1 -1
  23. package/src/components/Common/CardGridItem/index.vue +95 -65
  24. package/src/components/Containers/Carousel/index.stories.js +30 -0
  25. package/src/components/Containers/Carousel/index.vue +165 -0
  26. package/src/components/Containers/HomepageHeader/index.vue +26 -12
  27. package/src/components/Containers/HomepageHeaderNew/index.stories.js +75 -0
  28. package/src/components/Containers/HomepageHeaderNew/index.vue +198 -0
  29. package/src/components/Containers/SectionGroup/index.vue +1 -1
  30. package/src/components/Containers/Subheader/index.vue +30 -20
  31. package/src/components/Global/AlertStrip/index.stories.js +1 -0
  32. package/src/components/Global/AppFooter/FooterSocialShare/index.vue +1 -1
  33. package/src/components/Global/AppFooter/index.stories.js +1 -0
  34. package/src/components/Global/AppFooter/index.vue +33 -29
  35. package/src/components/Global/AppHeader/index.vue +49 -52
  36. package/src/components/Global/AppHeaderNew/ModalSearch/index.vue +71 -0
  37. package/src/components/Global/AppHeaderNew/ModalSearch/styles.scss +43 -0
  38. package/src/components/Global/AppHeaderNew/includes.scss +71 -0
  39. package/src/components/Global/AppHeaderNew/index.stories.js +74 -0
  40. package/src/components/Global/AppHeaderNew/index.vue +1176 -0
  41. package/src/components/Global/AppHeaderNew/mobile.scss +269 -0
  42. package/src/components/Global/AppHeaderNew/styles.scss +647 -0
  43. package/src/components/Global/ContrastMode/index.stories.js +1 -0
  44. package/src/components/Global/ContrastMode/index.vue +1 -1
  45. package/src/components/Global/Cookies/index.stories.js +16 -10
  46. package/src/components/Global/Cookies/index.vue +212 -172
  47. package/src/components/Global/Cookies/styles.scss +54 -54
  48. package/src/components/Global/DirectoryFilters/SingleTaxonomy/index.vue +50 -132
  49. package/src/components/Global/GlobalNotice/index.stories.js +7 -1
  50. package/src/components/Global/GlobalNotice/index.vue +84 -84
  51. package/src/components/Global/HeroHeader/index.stories.js +3 -4
  52. package/src/components/Global/HeroHeader/index.vue +28 -29
  53. package/src/components/Global/ProgressBar/index.stories.js +6 -16
  54. package/src/components/Global/SocialShare/index.vue +3 -2
  55. package/src/components/Global/Strip/index.stories.js +1 -17
  56. package/src/components/Global/Strip/index.vue +8 -4
  57. package/src/components/Paragraphs/Accordion/AccordionItem/index.vue +25 -21
  58. package/src/components/Paragraphs/Accordion/StepperItem/index.vue +19 -23
  59. package/src/components/Paragraphs/Accordion/index.stories.js +1 -0
  60. package/src/components/Paragraphs/Accordion/index.vue +16 -16
  61. package/src/components/Paragraphs/Breakout/index.stories.js +1 -0
  62. package/src/components/Paragraphs/BrowseContent/index.stories.js +1 -0
  63. package/src/components/Paragraphs/BrowseContent/index.vue +42 -31
  64. package/src/components/Paragraphs/Calculator/Constants.js +2 -2
  65. package/src/components/Paragraphs/Calculator/index.stories.js +1 -0
  66. package/src/components/Paragraphs/Chart/Constants.js +485 -485
  67. package/src/components/Paragraphs/Chart/index.vue +232 -241
  68. package/src/components/Paragraphs/Directory/Records/CJ/index.vue +3 -3
  69. package/src/components/Paragraphs/Directory/Records/HSCP/index.stories.js +32 -0
  70. package/src/components/Paragraphs/Directory/Records/HSCP/index.vue +213 -0
  71. package/src/components/Paragraphs/Directory/Records/ISP/index.vue +5 -5
  72. package/src/components/Paragraphs/Directory/Records/PRS/index.vue +2 -2
  73. package/src/components/Paragraphs/Directory/Records/PRS/recordContent.vue +3 -3
  74. package/src/components/Paragraphs/Directory/Records/PRS/recordDetails.vue +3 -3
  75. package/src/components/Paragraphs/Directory/Records/index.vue +66 -30
  76. package/src/components/Paragraphs/Directory/Records/styles.scss +1 -0
  77. package/src/components/Paragraphs/Directory/constants.js +23 -5
  78. package/src/components/Paragraphs/Directory/index.vue +56 -45
  79. package/src/components/Paragraphs/ListGroup/Link/list-link.stories.js +35 -39
  80. package/src/components/Paragraphs/ListGroup/index.vue +60 -47
  81. package/src/components/Paragraphs/ListGroup/list-group.stories.js +35 -31
  82. package/src/components/Paragraphs/ListGroup/navigation-card.stories.js +34 -30
  83. package/src/components/Paragraphs/MarketingBanner/index.stories.js +4 -18
  84. package/src/components/Paragraphs/ProofPoints/index.stories.js +19 -20
  85. package/src/components/Paragraphs/RelatedInformation/index.stories.js +11 -21
  86. package/src/components/Paragraphs/RelatedInformation/index.vue +12 -6
  87. package/src/components/Paragraphs/RelatedInformation/styles.scss +1 -3
  88. package/src/components/Paragraphs/RichText/index.stories.js +2 -1
  89. package/src/components/Paragraphs/ScrollSpy/index.stories.js +3 -1
  90. package/src/components/Paragraphs/ScrollSpy/index.vue +26 -12
  91. package/src/components/Paragraphs/SelectableCards/Control/index.stories.js +1 -0
  92. package/src/components/Paragraphs/SelectableCards/index.vue +15 -12
  93. package/src/components/Paragraphs/Statistics/index.stories.js +1 -0
  94. package/src/components/Paragraphs/Statistics/index.vue +1 -0
  95. package/src/components/Paragraphs/TabbedCards/index.stories.js +8 -27
  96. package/src/components/Paragraphs/TabbedCards/index.vue +69 -103
  97. package/src/components/Paragraphs/Tabs/index.stories.js +1 -0
  98. package/src/components/Paragraphs/Tabs/index.vue +19 -17
  99. package/src/components/Paragraphs/TabulatedData/index.stories.js +6 -5
  100. package/src/components/Paragraphs/TabulatedData/index.vue +63 -35
  101. package/src/components/Paragraphs/TaskFinder/index.stories.js +9 -32
  102. package/src/components/Paragraphs/TaskFinder/index.vue +3 -3
  103. package/src/components/Paragraphs/TaskFinder/pdf/index.vue +1 -1
  104. package/src/components/Paragraphs/TaskFinder/task-finder-column.vue +1 -1
  105. package/src/components/Paragraphs/TextMedia/index.stories.js +1 -0
  106. package/src/components/Paragraphs/TextMedia/index.vue +5 -1
  107. package/src/components/Paragraphs/VideoGrid/index.stories.js +1 -0
  108. package/src/components/Paragraphs/VideoPlayer/index.stories.js +1 -13
  109. package/src/components/Paragraphs/Webform/index.stories.js +94 -57
  110. package/src/components/Paragraphs/Webform/index.vue +11 -8
  111. package/src/components/SubComponents/Breadcrumb/index.stories.js +3 -11
  112. package/src/components/SubComponents/CardGroup/index.stories.js +1 -30
  113. package/src/components/SubComponents/CardGroup/index.vue +38 -28
  114. package/src/components/SubComponents/CtaButton/index.stories.js +1 -24
  115. package/src/components/SubComponents/CtaButton/index.vue +27 -25
  116. package/src/components/SubComponents/FormAddressPostcode/index.stories.js +3 -28
  117. package/src/components/SubComponents/FormAddressPostcode/index.vue +33 -36
  118. package/src/components/SubComponents/FormInstance/components/alert/index.vue +129 -0
  119. package/src/components/SubComponents/FormInstance/components/custom/base-formio.js +77 -0
  120. package/src/components/SubComponents/FormInstance/components/custom/code-formio.js +35 -0
  121. package/src/components/SubComponents/FormInstance/components/custom/custom-formio-registry.js +30 -0
  122. package/src/components/SubComponents/FormInstance/components/custom/range-formio.js +121 -0
  123. package/src/components/SubComponents/FormInstance/components/custom/rating-formio.js +121 -0
  124. package/src/components/SubComponents/FormInstance/components/custom/scale-formio.js +99 -0
  125. package/src/components/SubComponents/FormInstance/components/custom/tableselect-formio.js +200 -0
  126. package/src/components/SubComponents/FormInstance/components/handler/index.vue +204 -0
  127. package/src/components/SubComponents/FormInstance/components/renderer/index.vue +282 -0
  128. package/src/components/SubComponents/FormInstance/index.test.js +65 -0
  129. package/src/components/SubComponents/FormInstance/index.vue +55 -6
  130. package/src/components/SubComponents/FormInstance/models/base-form-element.js +338 -0
  131. package/src/components/SubComponents/FormInstance/models/form-callback-queue.js +45 -0
  132. package/src/components/SubComponents/FormInstance/models/form-utils.js +50 -0
  133. package/src/components/SubComponents/FormInstance/models/overrides/address.js +141 -0
  134. package/src/components/SubComponents/FormInstance/models/overrides/autocomplete.js +41 -0
  135. package/src/components/SubComponents/FormInstance/models/overrides/checkbox.js +14 -0
  136. package/src/components/SubComponents/FormInstance/models/overrides/checkboxes.js +49 -0
  137. package/src/components/SubComponents/FormInstance/models/overrides/code.js +27 -0
  138. package/src/components/SubComponents/FormInstance/models/overrides/composite.js +57 -0
  139. package/src/components/SubComponents/FormInstance/models/overrides/container.js +65 -0
  140. package/src/components/SubComponents/FormInstance/models/overrides/currency.js +17 -0
  141. package/src/components/SubComponents/FormInstance/models/overrides/customcomposite.js +41 -0
  142. package/src/components/SubComponents/FormInstance/models/overrides/date.js +126 -0
  143. package/src/components/SubComponents/FormInstance/models/overrides/datelist.js +73 -0
  144. package/src/components/SubComponents/FormInstance/models/overrides/detail.js +38 -0
  145. package/src/components/SubComponents/FormInstance/models/overrides/email-confirm.js +12 -0
  146. package/src/components/SubComponents/FormInstance/models/overrides/email.js +7 -0
  147. package/src/components/SubComponents/FormInstance/models/overrides/file.js +56 -0
  148. package/src/components/SubComponents/FormInstance/models/overrides/flexbox.js +33 -0
  149. package/src/components/SubComponents/FormInstance/models/overrides/hidden.js +24 -0
  150. package/src/components/SubComponents/FormInstance/models/overrides/likert.js +40 -0
  151. package/src/components/SubComponents/FormInstance/models/overrides/markup.js +47 -0
  152. package/src/components/SubComponents/FormInstance/models/overrides/message.js +53 -0
  153. package/src/components/SubComponents/FormInstance/models/overrides/moretext.js +64 -0
  154. package/src/components/SubComponents/FormInstance/models/overrides/multiple.js +51 -0
  155. package/src/components/SubComponents/FormInstance/models/overrides/number.js +22 -0
  156. package/src/components/SubComponents/FormInstance/models/overrides/options-other.js +34 -0
  157. package/src/components/SubComponents/FormInstance/models/overrides/page.js +7 -0
  158. package/src/components/SubComponents/FormInstance/models/overrides/phonenumber.js +13 -0
  159. package/src/components/SubComponents/FormInstance/models/overrides/radio.js +31 -0
  160. package/src/components/SubComponents/FormInstance/models/overrides/range.js +19 -0
  161. package/src/components/SubComponents/FormInstance/models/overrides/rating.js +47 -0
  162. package/src/components/SubComponents/FormInstance/models/overrides/scale.js +33 -0
  163. package/src/components/SubComponents/FormInstance/models/overrides/section.js +39 -0
  164. package/src/components/SubComponents/FormInstance/models/overrides/select.js +28 -0
  165. package/src/components/SubComponents/FormInstance/models/overrides/signature.js +7 -0
  166. package/src/components/SubComponents/FormInstance/models/overrides/submit.js +23 -0
  167. package/src/components/SubComponents/FormInstance/models/overrides/table.js +48 -0
  168. package/src/components/SubComponents/FormInstance/models/overrides/tablerow.js +20 -0
  169. package/src/components/SubComponents/FormInstance/models/overrides/tableselect.js +66 -0
  170. package/src/components/SubComponents/FormInstance/models/overrides/testing.js +47 -0
  171. package/src/components/SubComponents/FormInstance/models/overrides/text.js +7 -0
  172. package/src/components/SubComponents/FormInstance/models/overrides/textarea.js +26 -0
  173. package/src/components/SubComponents/FormInstance/models/overrides/textformat.js +13 -0
  174. package/src/components/SubComponents/FormInstance/models/overrides/time.js +13 -0
  175. package/src/components/SubComponents/FormInstance/models/overrides/twig.js +118 -0
  176. package/src/components/SubComponents/FormInstance/models/overrides/unknown.js +24 -0
  177. package/src/components/SubComponents/FormInstance/models/overrides/url.js +13 -0
  178. package/src/components/SubComponents/FormInstance/services/convert-form-element.js +49 -0
  179. package/src/components/SubComponents/FormInstance/services/form-api.js +47 -0
  180. package/src/components/SubComponents/FormInstance/services/form-render-parser.js +156 -0
  181. package/src/components/SubComponents/FormInstance/services/form-submit-parser.js +61 -0
  182. package/src/components/SubComponents/FormInstance/services/logic-linker.js +73 -0
  183. package/src/components/SubComponents/FormInstance/services/logic-parser.js +173 -0
  184. package/src/components/SubComponents/FormInstance/services/registry-factory.js +284 -0
  185. package/src/components/SubComponents/FormInstance/stories/Documentation.mdx +234 -0
  186. package/src/components/SubComponents/FormInstance/stories/advanced.stories.js +109 -0
  187. package/src/components/SubComponents/FormInstance/stories/basic.stories.js +73 -0
  188. package/src/components/SubComponents/FormInstance/stories/build.stories.js +27 -0
  189. package/src/components/SubComponents/FormInstance/stories/composite.stories.js +90 -0
  190. package/src/components/SubComponents/FormInstance/stories/condition.stories.js +83 -0
  191. package/src/components/SubComponents/FormInstance/stories/custom.stories.js +69 -0
  192. package/src/components/SubComponents/FormInstance/stories/date.stories.js +76 -0
  193. package/src/components/SubComponents/FormInstance/stories/fileupload.stories.js +57 -0
  194. package/src/components/SubComponents/FormInstance/stories/form-alert.stories.js +93 -0
  195. package/src/components/SubComponents/FormInstance/stories/index.stories.js +63 -0
  196. package/src/components/SubComponents/FormInstance/stories/layout.stories.js +85 -0
  197. package/src/components/SubComponents/FormInstance/stories/markup.stories.js +91 -0
  198. package/src/components/SubComponents/FormInstance/stories/mocks/address.json +298 -0
  199. package/src/components/SubComponents/FormInstance/stories/mocks/advancedhtml.json +23 -0
  200. package/src/components/SubComponents/FormInstance/stories/mocks/autocomplete.json +34 -0
  201. package/src/components/SubComponents/FormInstance/stories/mocks/basichtml.json +15 -0
  202. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxes.json +102 -0
  203. package/src/components/SubComponents/FormInstance/stories/mocks/checkboxesother.json +197 -0
  204. package/src/components/SubComponents/FormInstance/stories/mocks/container.json +134 -0
  205. package/src/components/SubComponents/FormInstance/stories/mocks/customcomposite.json +469 -0
  206. package/src/components/SubComponents/FormInstance/stories/mocks/date.json +19 -0
  207. package/src/components/SubComponents/FormInstance/stories/mocks/datelist.json +752 -0
  208. package/src/components/SubComponents/FormInstance/stories/mocks/datetime.json +89 -0
  209. package/src/components/SubComponents/FormInstance/stories/mocks/details.json +63 -0
  210. package/src/components/SubComponents/FormInstance/stories/mocks/email.json +18 -0
  211. package/src/components/SubComponents/FormInstance/stories/mocks/emailconfirm.json +110 -0
  212. package/src/components/SubComponents/FormInstance/stories/mocks/fieldset.json +62 -0
  213. package/src/components/SubComponents/FormInstance/stories/mocks/fileupload.json +25 -0
  214. package/src/components/SubComponents/FormInstance/stories/mocks/flexbox.json +58 -0
  215. package/src/components/SubComponents/FormInstance/stories/mocks/hidden.json +35 -0
  216. package/src/components/SubComponents/FormInstance/stories/mocks/horizontalrule.json +14 -0
  217. package/src/components/SubComponents/FormInstance/stories/mocks/jahd.json +1359 -0
  218. package/src/components/SubComponents/FormInstance/stories/mocks/label.json +14 -0
  219. package/src/components/SubComponents/FormInstance/stories/mocks/likert.json +375 -0
  220. package/src/components/SubComponents/FormInstance/stories/mocks/message.json +86 -0
  221. package/src/components/SubComponents/FormInstance/stories/mocks/more.json +19 -0
  222. package/src/components/SubComponents/FormInstance/stories/mocks/multiple.json +142 -0
  223. package/src/components/SubComponents/FormInstance/stories/mocks/number.json +35 -0
  224. package/src/components/SubComponents/FormInstance/stories/mocks/quad.json +249 -0
  225. package/src/components/SubComponents/FormInstance/stories/mocks/radios.json +70 -0
  226. package/src/components/SubComponents/FormInstance/stories/mocks/radiosother.json +176 -0
  227. package/src/components/SubComponents/FormInstance/stories/mocks/range.json +58 -0
  228. package/src/components/SubComponents/FormInstance/stories/mocks/rating.json +42 -0
  229. package/src/components/SubComponents/FormInstance/stories/mocks/rule-disabled-value.json +66 -0
  230. package/src/components/SubComponents/FormInstance/stories/mocks/rule-enabled-value.json +43 -0
  231. package/src/components/SubComponents/FormInstance/stories/mocks/rule-hidden-value.json +68 -0
  232. package/src/components/SubComponents/FormInstance/stories/mocks/rule-required-value.json +69 -0
  233. package/src/components/SubComponents/FormInstance/stories/mocks/rule-visible-value.json +157 -0
  234. package/src/components/SubComponents/FormInstance/stories/mocks/sameas.json +66 -0
  235. package/src/components/SubComponents/FormInstance/stories/mocks/scale.json +200 -0
  236. package/src/components/SubComponents/FormInstance/stories/mocks/section.json +63 -0
  237. package/src/components/SubComponents/FormInstance/stories/mocks/select.json +41 -0
  238. package/src/components/SubComponents/FormInstance/stories/mocks/selectother.json +115 -0
  239. package/src/components/SubComponents/FormInstance/stories/mocks/signature.json +25 -0
  240. package/src/components/SubComponents/FormInstance/stories/mocks/styles.json +81 -0
  241. package/src/components/SubComponents/FormInstance/stories/mocks/table-select.json +472 -0
  242. package/src/components/SubComponents/FormInstance/stories/mocks/table.json +154 -0
  243. package/src/components/SubComponents/FormInstance/stories/mocks/telephone.json +18 -0
  244. package/src/components/SubComponents/FormInstance/stories/mocks/textarea.json +22 -0
  245. package/src/components/SubComponents/FormInstance/stories/mocks/textfield.json +66 -0
  246. package/src/components/SubComponents/FormInstance/stories/mocks/time.json +20 -0
  247. package/src/components/SubComponents/FormInstance/stories/mocks/token.json +260 -0
  248. package/src/components/SubComponents/FormInstance/stories/mocks/twig.json +154 -0
  249. package/src/components/SubComponents/FormInstance/stories/mocks/url.json +18 -0
  250. package/src/components/SubComponents/FormInstance/stories/mocks/value.json +17 -0
  251. package/src/components/SubComponents/FormInstance/stories/mocks/wizard.json +353 -0
  252. package/src/components/SubComponents/FormInstance/stories/options.stories.js +98 -0
  253. package/src/components/SubComponents/FormInstance/stories/style.stories.js +55 -0
  254. package/src/components/SubComponents/FormInstance/stories/wizard.stories.js +55 -0
  255. package/src/components/SubComponents/FormInstance/style.scss +185 -0
  256. package/src/components/SubComponents/FormInstance/tests/address.test.js +255 -0
  257. package/src/components/SubComponents/FormInstance/tests/advancedhtml.test.js +31 -0
  258. package/src/components/SubComponents/FormInstance/tests/autocomplete.test.js +38 -0
  259. package/src/components/SubComponents/FormInstance/tests/basichtml.test.js +31 -0
  260. package/src/components/SubComponents/FormInstance/tests/checkbox.test.js +29 -0
  261. package/src/components/SubComponents/FormInstance/tests/checkboxes.test.js +44 -0
  262. package/src/components/SubComponents/FormInstance/tests/checkboxesother.test.js +91 -0
  263. package/src/components/SubComponents/FormInstance/tests/container.test.js +66 -0
  264. package/src/components/SubComponents/FormInstance/tests/customcomposite.test.js +86 -0
  265. package/src/components/SubComponents/FormInstance/tests/date.test.js +63 -0
  266. package/src/components/SubComponents/FormInstance/tests/datelist.test.js +136 -0
  267. package/src/components/SubComponents/FormInstance/tests/datetime.test.js +54 -0
  268. package/src/components/SubComponents/FormInstance/tests/details.test.js +58 -0
  269. package/src/components/SubComponents/FormInstance/tests/email.test.js +28 -0
  270. package/src/components/SubComponents/FormInstance/tests/emailconfirm.test.js +79 -0
  271. package/src/components/SubComponents/FormInstance/tests/fieldset.test.js +63 -0
  272. package/src/components/SubComponents/FormInstance/tests/flexbox.test.js +71 -0
  273. package/src/components/SubComponents/FormInstance/tests/form-test-utils.js +120 -0
  274. package/src/components/SubComponents/FormInstance/tests/form.test.js +26 -0
  275. package/src/components/SubComponents/FormInstance/tests/hidden.test.js +52 -0
  276. package/src/components/SubComponents/FormInstance/tests/horizontalrule.test.js +31 -0
  277. package/src/components/SubComponents/FormInstance/tests/label.test.js +31 -0
  278. package/src/components/SubComponents/FormInstance/tests/likert.test.js +38 -0
  279. package/src/components/SubComponents/FormInstance/tests/message.test.js +89 -0
  280. package/src/components/SubComponents/FormInstance/tests/more.test.js +32 -0
  281. package/src/components/SubComponents/FormInstance/tests/multiple.test.js +71 -0
  282. package/src/components/SubComponents/FormInstance/tests/number.test.js +51 -0
  283. package/src/components/SubComponents/FormInstance/tests/radios.test.js +34 -0
  284. package/src/components/SubComponents/FormInstance/tests/radiosother.test.js +79 -0
  285. package/src/components/SubComponents/FormInstance/tests/range.test.js +32 -0
  286. package/src/components/SubComponents/FormInstance/tests/rating.test.js +38 -0
  287. package/src/components/SubComponents/FormInstance/tests/rule-disabled.test.js +128 -0
  288. package/src/components/SubComponents/FormInstance/tests/rule-enabled-value.test.js +78 -0
  289. package/src/components/SubComponents/FormInstance/tests/rule-hidden.test.js +131 -0
  290. package/src/components/SubComponents/FormInstance/tests/rule-required-value.test.js +144 -0
  291. package/src/components/SubComponents/FormInstance/tests/rule-visible.test.js +619 -0
  292. package/src/components/SubComponents/FormInstance/tests/sameas.test.js +94 -0
  293. package/src/components/SubComponents/FormInstance/tests/scale.test.js +43 -0
  294. package/src/components/SubComponents/FormInstance/tests/section.test.js +63 -0
  295. package/src/components/SubComponents/FormInstance/tests/select.test.js +45 -0
  296. package/src/components/SubComponents/FormInstance/tests/selectother.test.js +82 -0
  297. package/src/components/SubComponents/FormInstance/tests/signature.test.js +32 -0
  298. package/src/components/SubComponents/FormInstance/tests/styles.test.js +73 -0
  299. package/src/components/SubComponents/FormInstance/tests/table-select.test.js +93 -0
  300. package/src/components/SubComponents/FormInstance/tests/table.test.js +97 -0
  301. package/src/components/SubComponents/FormInstance/tests/telephone.test.js +29 -0
  302. package/src/components/SubComponents/FormInstance/tests/textarea.test.js +29 -0
  303. package/src/components/SubComponents/FormInstance/tests/textfield.test.js +48 -0
  304. package/src/components/SubComponents/FormInstance/tests/time.test.js +29 -0
  305. package/src/components/SubComponents/FormInstance/tests/token.test.js +33 -0
  306. package/src/components/SubComponents/FormInstance/tests/twig.test.js +74 -0
  307. package/src/components/SubComponents/FormInstance/tests/url.test.js +45 -0
  308. package/src/components/SubComponents/FormInstance/tests/value.test.js +31 -0
  309. package/src/components/SubComponents/FormInstance/tests/wizard.test.js +145 -0
  310. package/src/components/SubComponents/Icon/index.stories.js +1 -6
  311. package/src/components/SubComponents/MediaPlayer/index.stories.js +1 -6
  312. package/src/components/SubComponents/Pagination/index.stories.js +3 -8
  313. package/src/components/SubComponents/ResourceGroup/List/index.stories.js +3 -2
  314. package/src/components/SubComponents/ResourceGroup/index.vue +211 -174
  315. package/src/components/SubComponents/Search/index.vue +39 -37
  316. package/src/components/SubComponents/SingleImage/index.stories.js +2 -16
  317. package/src/components/SubComponents/VideoThumbnail/index.stories.js +1 -0
  318. package/src/components/SubComponents/VideoThumbnail/index.vue +31 -117
  319. package/src/includes/scss/mixins/src/grid.scss +4 -2
  320. package/src/includes/scss/mixins/src/units.scss +25 -4
  321. package/src/includes/scss/vars/src/colors.module.scss +28 -1
  322. package/src/main.js +2 -10
  323. package/src/mock/app-header-new.js +715 -0
  324. package/src/mock/carousel-items.js +57 -0
  325. package/src/mock/jest.fileMock.js +1 -0
  326. package/vite.config.js +28 -15
  327. package/src/components/SubComponents/FormInstance/index.stories.js +0 -8
@@ -98,7 +98,7 @@
98
98
  <script>
99
99
  import emailIcon from '../../../assets/icons/SocialShare/email-white.svg?url'
100
100
  import facebookIcon from '../../../assets/icons/SocialShare/facebook-white.svg?url'
101
- import twitterIcon from '../../../assets/icons/SocialShare/twitter-white.svg?url'
101
+ import twitterIcon from '../../../assets/icons/SocialShare/x-icon-white.svg?url'
102
102
  import officeFilePdfIcon from '../../../assets/icons/SocialShare/office-file-pdf.svg?url'
103
103
  import { BButton, BButtonGroup } from 'bootstrap-vue-next'
104
104
 
@@ -137,7 +137,8 @@ export default {
137
137
  }
138
138
  },
139
139
  mounted() {
140
- if (process.client) {
140
+ let winHref = window.location.href
141
+ if (winHref.toLowerCase().includes("worksafe")) {
141
142
  this.url = window.location.href;
142
143
  }
143
144
  },
@@ -9,23 +9,7 @@ const stripContentFull =
9
9
  export default {
10
10
  title: 'Global/Strip',
11
11
  component: Strip,
12
- argTypes: {
13
- stripHeading: {
14
- control: 'text'
15
- },
16
- stripContent: {
17
- control: 'text'
18
- },
19
- rtl: {
20
- control: 'boolean'
21
- },
22
- type: {
23
- control: 'text'
24
- },
25
- mini: {
26
- control: 'boolean'
27
- }
28
- }
12
+ tags: ['autodocs'],
29
13
  }
30
14
 
31
15
  export const MiniAlertStrip = {
@@ -12,7 +12,7 @@
12
12
  @dismissed="handleDismissed()"
13
13
  >
14
14
  <div
15
- :role="mini ? 'link' : false"
15
+ :role="mini ? 'link' : null"
16
16
  :class="type + '-strip__inner-wrap'"
17
17
  :tabindex="mini ? 0 : false"
18
18
  :style="mini ? 'cursor: pointer;' : false"
@@ -331,11 +331,15 @@ export default {
331
331
 
332
332
  a {
333
333
  color: $black;
334
-
335
- &:focus {
334
+ text-decoration: none;
335
+ }
336
+ a:hover {
336
337
  text-decoration: underline;
337
338
  }
338
- }
339
+ a:focus {
340
+ text-decoration: underline;
341
+ }
342
+
339
343
  }
340
344
  &__icon {
341
345
  &--caret {
@@ -6,15 +6,15 @@
6
6
  class="accordion-item"
7
7
  :class="{
8
8
  rtl: rtl,
9
- '--with-pre-heading': preHeading && showPreHeading
9
+ '--with-pre-heading': preHeading && showPreHeading,
10
10
  }"
11
11
  >
12
12
  <a
13
- :id="'accordion' + _uid ? _uid : ''"
13
+ :id="'accordion' + $.uid ? $.uid : ''"
14
14
  role="button"
15
15
  :aria-expanded="showAccordion ? 'true' : 'false'"
16
16
  class="accordion-item__title"
17
- :aria-controls="'sect' + _uid ? _uid : ''"
17
+ :aria-controls="'sect' + $.uid ? $.uid : ''"
18
18
  tabindex="0"
19
19
  @click.prevent="toggleAccordion"
20
20
  @keypress.enter="toggleAccordion"
@@ -33,7 +33,7 @@
33
33
  :icon-alt="'collapse'"
34
34
  :glyph="CaretUp"
35
35
  :class="{
36
- '--with-pre-heading': preHeading && showPreHeading
36
+ '--with-pre-heading': preHeading && showPreHeading,
37
37
  }"
38
38
  />
39
39
  <icon
@@ -44,17 +44,17 @@
44
44
  :icon-alt="'expand'"
45
45
  :glyph="CaretDown"
46
46
  :class="{
47
- '--with-pre-heading': preHeading && showPreHeading
47
+ '--with-pre-heading': preHeading && showPreHeading,
48
48
  }"
49
49
  />
50
50
  </a>
51
51
  <b-card-body v-if="content">
52
52
  <div
53
53
  v-show="showAccordion"
54
- :id="'sect' + _uid ? _uid : ''"
54
+ :id="'sect' + $.uid ? $.uid : ''"
55
55
  class="accordion-item__content"
56
56
  role="region"
57
- :aria-labelledby="'accordion' + _uid ? _uid : ''"
57
+ :aria-labelledby="'accordion' + $.uid ? $.uid : ''"
58
58
  >
59
59
  <rich-text :content="content" />
60
60
  </div>
@@ -76,42 +76,42 @@ export default {
76
76
  RichText,
77
77
  Icon,
78
78
  BCard,
79
- BCardBody
79
+ BCardBody,
80
80
  },
81
81
  props: {
82
82
  title: {
83
83
  type: String,
84
- default: 'Item'
84
+ default: 'Item',
85
85
  },
86
86
  preHeading: {
87
87
  type: String,
88
- default: 'PRE-HEADING'
88
+ default: 'PRE-HEADING',
89
89
  },
90
90
  content: {
91
91
  type: String,
92
- default: null
92
+ default: null,
93
93
  },
94
94
  rtl: {
95
95
  type: Boolean,
96
- default: false
96
+ default: false,
97
97
  },
98
98
  open: {
99
99
  type: Boolean,
100
- default: false
100
+ default: false,
101
101
  },
102
102
  showPreHeading: {
103
103
  type: Boolean,
104
- default: false
104
+ default: false,
105
105
  },
106
106
  meta: {
107
107
  type: Array,
108
- default: () => []
109
- }
108
+ default: () => [],
109
+ },
110
110
  },
111
111
  data: () => ({
112
112
  showAccordion: false,
113
113
  CaretDown,
114
- CaretUp
114
+ CaretUp,
115
115
  }),
116
116
  mounted() {
117
117
  this.$nextTick(() => {
@@ -122,12 +122,16 @@ export default {
122
122
  toggleAccordion() {
123
123
  this.showAccordion = !this.showAccordion
124
124
  if (this.showAccordion) {
125
- this.$root.$emit('accordionItemOpen', this.meta)
125
+ if (this.$bus) {
126
+ this.$bus.$emit('accordionItemOpen', this.meta) // this.$root.$emit('accordionItemOpen', this.meta)
127
+ }
126
128
  } else {
127
- this.$root.$emit('accordionItemClose', this.meta)
129
+ if (this.$bus) {
130
+ this.$bus.$emit('accordionItemClose', this.meta) // this.$root.$emit('accordionItemClose', this.meta)
131
+ }
128
132
  }
129
- }
130
- }
133
+ },
134
+ },
131
135
  }
132
136
  </script>
133
137
 
@@ -5,15 +5,15 @@
5
5
  v-if="title"
6
6
  class="accordion-stepper"
7
7
  :class="{
8
- rtl: rtl
8
+ rtl: rtl,
9
9
  }"
10
10
  >
11
11
  <div>
12
12
  <button
13
- :id="'accordion' + _uid ? _uid : ''"
13
+ :id="'accordion' + $.uid ? $.uid : ''"
14
14
  :aria-expanded="showAccordion ? 'true' : 'false'"
15
15
  class="accordion-stepper__title"
16
- :aria-controls="'sect' + _uid ? _uid : ''"
16
+ :aria-controls="'sect' + $.uid ? $.uid : ''"
17
17
  @click="toggleAccordion"
18
18
  >
19
19
  <div
@@ -25,13 +25,9 @@
25
25
  </div>
26
26
 
27
27
  <div class="accordion-stepper__titleText">
28
- <rich-text
29
- :tag="'h3'"
30
- :tag-class="'card-title'"
31
- :content="title"
32
- />
28
+ <rich-text :tag="'h3'" :tag-class="'card-title'" :content="title" />
33
29
  </div>
34
-
30
+
35
31
  <div class="stepper-icon__wrapper">
36
32
  <icon
37
33
  v-show="showAccordion && content"
@@ -54,10 +50,10 @@
54
50
  <b-card-body v-if="content">
55
51
  <div
56
52
  v-show="showAccordion"
57
- :id="'sect' + _uid ? _uid : ''"
53
+ :id="'sect' + $.uid ? $.uid : ''"
58
54
  class="accordion-stepper__content"
59
55
  role="region"
60
- :aria-labelledby="'accordion' + _uid ? _uid : ''"
56
+ :aria-labelledby="'accordion' + $.uid ? $.uid : ''"
61
57
  >
62
58
  <rich-text :content="content" />
63
59
  </div>
@@ -80,42 +76,42 @@ export default {
80
76
  RichText,
81
77
  Icon,
82
78
  BCard,
83
- BCardBody
79
+ BCardBody,
84
80
  },
85
81
  props: {
86
82
  title: {
87
83
  type: String,
88
- default: 'Item'
84
+ default: 'Item',
89
85
  },
90
86
  content: {
91
87
  type: String,
92
- default: null
88
+ default: null,
93
89
  },
94
90
  rtl: {
95
91
  type: Boolean,
96
- default: false
92
+ default: false,
97
93
  },
98
94
  open: {
99
95
  type: Boolean,
100
- default: false
96
+ default: false,
101
97
  },
102
98
  showPreHeading: {
103
99
  type: Boolean,
104
- default: false
100
+ default: false,
105
101
  },
106
102
  number: {
107
103
  type: Number,
108
- default: null
104
+ default: null,
109
105
  },
110
106
  isWorkWell: {
111
107
  type: Boolean,
112
- default: false
113
- }
108
+ default: false,
109
+ },
114
110
  },
115
111
  data: () => ({
116
112
  showAccordion: false,
117
113
  CaretDown,
118
- CaretUp
114
+ CaretUp,
119
115
  }),
120
116
  mounted() {
121
117
  this.$nextTick(() => {
@@ -125,8 +121,8 @@ export default {
125
121
  methods: {
126
122
  toggleAccordion() {
127
123
  this.showAccordion = !this.showAccordion
128
- }
129
- }
124
+ },
125
+ },
130
126
  }
131
127
  </script>
132
128
 
@@ -30,6 +30,7 @@ const mockAccordionItems = [
30
30
  export default {
31
31
  title: 'Paragraphs/Accordion',
32
32
  component: Accordion,
33
+ tags: ['autodocs'],
33
34
  argTypes: {
34
35
  titleTag: {
35
36
  control: 'select',
@@ -10,11 +10,11 @@
10
10
  <ol class="accordion-list">
11
11
  <li
12
12
  v-for="(item, index) in accordionList"
13
- :key="_uid ? _uid : '' + index"
13
+ :key="$.uid ? $.uid : '' + index"
14
14
  :class="{
15
15
  workwell: isWorkwell,
16
16
  rtl: rtl || item.field_rtl,
17
- stepper: isStepper
17
+ stepper: isStepper,
18
18
  }"
19
19
  class="accordion"
20
20
  >
@@ -55,51 +55,51 @@ export default {
55
55
  props: {
56
56
  titleTag: {
57
57
  type: String,
58
- default: 'h2'
58
+ default: 'h2',
59
59
  },
60
60
  title: {
61
61
  type: String,
62
- default: null
62
+ default: null,
63
63
  },
64
64
  isStepper: {
65
65
  type: Boolean,
66
- default: false
66
+ default: false,
67
67
  },
68
68
  showPreHeading: {
69
69
  type: Boolean,
70
- default: false
70
+ default: false,
71
71
  },
72
72
  isWorkwell: {
73
73
  type: Boolean,
74
- default: false
74
+ default: false,
75
75
  },
76
76
  accordionList: {
77
77
  type: Array,
78
- default: null
78
+ default: null,
79
79
  },
80
80
  rtl: {
81
81
  type: Boolean,
82
- default: false
82
+ default: false,
83
83
  },
84
84
  size: {
85
85
  type: String,
86
- default: 'content'
86
+ default: 'content',
87
87
  },
88
88
  option: {
89
89
  type: String,
90
- default: 'open-first'
91
- }
90
+ default: 'open-first',
91
+ },
92
92
  },
93
93
  data: () => ({
94
94
  OPEN_ALL: 'open-all',
95
95
  CLOSE_ALL: 'close-all',
96
96
  OPEN_FIRST: 'open-first',
97
- accordionOption: null
97
+ accordionOption: null,
98
98
  }),
99
99
  computed: {
100
100
  isPDF() {
101
101
  return typeof this.$isPDF === 'function' ? this.$isPDF() : false
102
- }
102
+ },
103
103
  },
104
104
  mounted() {
105
105
  if (this.option) {
@@ -121,8 +121,8 @@ export default {
121
121
  },
122
122
  hasContent(item) {
123
123
  return item?.field_rich_text?.value
124
- }
125
- }
124
+ },
125
+ },
126
126
  }
127
127
  </script>
128
128
 
@@ -3,6 +3,7 @@ import Breakout from './index.vue'
3
3
  export default {
4
4
  title: 'Paragraphs/Breakout',
5
5
  component: Breakout,
6
+ tags: ['autodocs'],
6
7
  argTypes: {
7
8
  headingTag: {
8
9
  control: 'select',
@@ -5,6 +5,7 @@ const bundleContent = ['news', 'page']
5
5
  export default {
6
6
  title: 'Paragraphs/BrowseContent',
7
7
  component: { BrowseContent },
8
+ tags: ['autodocs'],
8
9
  argTypes: {
9
10
  background: {
10
11
  control: 'select',
@@ -8,6 +8,7 @@
8
8
  :columns="columns"
9
9
  :show-load-more="showMore && hasMorePages"
10
10
  :class="`wcl-browse-content card_group__card--col-${columns}`"
11
+ :card-browse-content="true"
11
12
  @loadMore="() => loadMoreCards(false)"
12
13
  >
13
14
  <template
@@ -47,63 +48,70 @@ export default {
47
48
  components: {
48
49
  CardGroup,
49
50
  DirectoryFilters,
50
- Switcher
51
+ Switcher,
51
52
  },
52
53
  props: {
53
54
  background: {
54
55
  type: String,
55
- default: 'grey'
56
+ default: 'grey',
56
57
  },
57
58
  title: {
58
59
  type: String,
59
- default: ''
60
+ default: '',
60
61
  },
61
62
  titleTag: {
62
63
  type: String,
63
- default: 'h2'
64
+ default: 'h2',
64
65
  },
65
66
  bundle: {
66
67
  type: Array,
67
- default: () => ['']
68
+ default: () => [''],
68
69
  },
69
70
  columns: {
70
71
  type: Number,
71
- default: 0
72
+ default: 0,
72
73
  },
73
74
  initialDisplyLimit: {
74
75
  type: Number,
75
- default: 0
76
+ default: 0,
76
77
  },
77
78
  fetchContent: {
78
79
  type: Function,
79
- required: true
80
+ required: true,
80
81
  },
81
82
  fetchFilters: {
82
83
  type: Function,
83
84
  required: false,
84
- default: null
85
+ default: null,
85
86
  },
86
87
  enableBundleFilter: {
87
- type: Boolean
88
+ type: Boolean,
88
89
  },
89
90
  getBundleAlias: {
90
91
  type: Function,
91
92
  required: false,
92
- default: null
93
+ default: null,
93
94
  },
94
95
  showMore: {
95
- type: Boolean
96
+ type: Boolean,
96
97
  },
97
98
  type: {
98
99
  type: String,
99
- required: true
100
- }
100
+ required: true,
101
+ },
101
102
  },
102
- async fetch() {
103
+ // Temp use of mounted to replace fetch
104
+ async mounted() {
103
105
  if (this.displayedCards.length === 0) {
104
106
  await this.loadFiltersAndContent()
105
107
  }
106
108
  },
109
+ // TODO useAsyncData <script setup>
110
+ // async fetch() {
111
+ // if (this.displayedCards.length === 0) {
112
+ // await this.loadFiltersAndContent()
113
+ // }
114
+ // },
107
115
  data() {
108
116
  return {
109
117
  hasMorePages: false,
@@ -115,8 +123,8 @@ export default {
115
123
  filters: {
116
124
  taxonomies: [],
117
125
  selected: {},
118
- availableBundles: []
119
- }
126
+ availableBundles: [],
127
+ },
120
128
  }
121
129
  },
122
130
  fetchOnServer: true,
@@ -125,13 +133,13 @@ export default {
125
133
  async loadFiltersAndContent() {
126
134
  await Promise.all([
127
135
  this.fetchFilters ? this.loadFilters() : Promise.resolve(),
128
- this.loadMoreCards(true)
136
+ this.loadMoreCards(true),
129
137
  ])
130
138
  },
131
139
  init() {
132
140
  this.allCards = {
133
141
  total: 0,
134
- cards: []
142
+ cards: [],
135
143
  }
136
144
  this.displayLimit = 0
137
145
  this.hasMorePages = false
@@ -144,8 +152,8 @@ export default {
144
152
  if (shouldMakeNewFetchCall) {
145
153
  const cardBundles = await Promise.all(
146
154
  bundles.map((bundle, index) =>
147
- this.getBundle(bundle, addMoreBy, index)
148
- )
155
+ this.getBundle(bundle, addMoreBy, index),
156
+ ),
149
157
  )
150
158
  allCards = this.getShuffledCards(cardBundles)
151
159
 
@@ -160,7 +168,7 @@ export default {
160
168
  },
161
169
  async loadMoreCards(init) {
162
170
  const attrs = {
163
- group: this.$store?.state?.page?.content?.title
171
+ group: this.$pageStore?.content?.title,
164
172
  }
165
173
  if (this.$gtm && !init) {
166
174
  this.$gtm.push({ event: 'custom.interaction.showmore.click', ...attrs })
@@ -179,7 +187,7 @@ export default {
179
187
  this.displayedCards,
180
188
  this.allCards,
181
189
  addMoreBy,
182
- bundles
190
+ bundles,
183
191
  )
184
192
  this.hasMorePages = this.allCards.total > this.allCards.cards.length
185
193
  this.displayedCards = this.allCards.cards.slice(0, this.displayLimit)
@@ -191,11 +199,11 @@ export default {
191
199
  const cache = (this.bundleCache[bundle] = this.bundleCache[bundle] || {
192
200
  response: {
193
201
  results: [],
194
- numFound: 0
202
+ numFound: 0,
195
203
  },
196
204
  qs: {
197
- start
198
- }
205
+ start,
206
+ },
199
207
  })
200
208
 
201
209
  if (cache.qs.start === undefined) {
@@ -209,7 +217,7 @@ export default {
209
217
  const qs = {
210
218
  bundle,
211
219
  rows,
212
- start
220
+ start,
213
221
  }
214
222
  return this.fetchContent(qs, this.filters.selected, index).then(
215
223
  (response) => {
@@ -217,14 +225,14 @@ export default {
217
225
  cache.response.numFound = response.numFound
218
226
  cache.response.results.push(...response.results)
219
227
  return cache.response
220
- }
228
+ },
221
229
  )
222
230
  },
223
231
  getShuffledCards(cardBundles) {
224
232
  const shuffled = []
225
233
  const bundleWithMostCards = cardBundles.reduce(
226
234
  (a, b) => (a.results.length > b.results.length ? a : b),
227
- { results: [] }
235
+ { results: [] },
228
236
  ).results.length
229
237
 
230
238
  for (let i = 0; i < bundleWithMostCards; i++) {
@@ -273,8 +281,8 @@ export default {
273
281
  return new Date(b.dateSort) - new Date(a.dateSort)
274
282
  })
275
283
  return sorted
276
- }
277
- }
284
+ },
285
+ },
278
286
  }
279
287
  </script>
280
288
  <style lang="scss" scoped>
@@ -283,14 +291,17 @@ export default {
283
291
  align-items: flex-end;
284
292
  place-content: flex-end;
285
293
  }
294
+
286
295
  &.card_group__card--col-4 {
287
296
  :deep(.card-grid__column .card-grid-item__description) {
288
297
  display: none;
289
298
  }
290
299
  }
300
+
291
301
  :deep(.card_group__card--blue .card_item__desc p) {
292
302
  margin-top: 12px;
293
303
  }
304
+
294
305
  :deep(.card_group__card--red .card_item__desc p) {
295
306
  margin-top: 12px;
296
307
  }
@@ -29,9 +29,9 @@ export const barItems = [
29
29
 
30
30
  export const cardTitles = {
31
31
  weight: {
32
- heading: 'Pick a object?',
32
+ heading: 'Pick an object?',
33
33
  subHeading:
34
- '<p>Pick a object from the selections or if you know exactly how heavy the object that is being dropped is, enter the weight in input box below</p>',
34
+ '<p>Pick an object from the selections or if you know exactly how heavy the object that is being dropped is, enter the weight in input box below</p>',
35
35
  selectHeading: 'How heavy is the object?',
36
36
  selectSubHeading: 'Weight in kilograms, max is 500 kg'
37
37
  },
@@ -12,6 +12,7 @@ import {
12
12
  export default {
13
13
  title: 'Paragraphs/Calculator',
14
14
  component: Calculator,
15
+ tags: ['autodocs'],
15
16
  args: {
16
17
  items: barItems,
17
18
  titles: cardTitles,